Utilisez Firefox avec Selenium depuis python et enregistrez la capture d'écran

procédure

Préparation environnementale

python


sudo easy_install selenium

Exportation depuis Selenium IDE

  1. Créez un scénario de test avec Selenium IDE.

スクリーンショット 2014-08-28 6.09.55.png

  1. Sélectionnez Python 2 / unitetest / WebDriver dans Exporter

スクリーンショット 2014-08-28 6.10.35.png

  1. Enregistrez sous selenium.py

Correction de sélénium.py

La capture d'écran n'est pas possible telle quelle.

ERROR: Caught exception [ERROR: Unsupported command [captureEntirePageScreenshot | /Users/owner/a.jpg | ]]

Ajoutez ce qui suit sous la ligne

python


        driver.save_screenshot("a.jpg ")

Référence: Seleniumworks: Capturer l'écran en cas d'échec du test --WebDriver

Courir

python


python selenium.py

Confirmez que Firefox fonctionne et qu'un.jpg est généré.

Référence: texte intégral de selenium.py

selenium.py


# -*- coding: utf-8 -*-
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
from selenium.common.exceptions import NoAlertPresentException
import unittest, time, re

class Aa(unittest.TestCase):
    def setUp(self):
        self.driver = webdriver.Firefox()
        self.driver.implicitly_wait(30)
        self.base_url = "http://auction.yahoo.co.jp/"
        self.verificationErrors = []
        self.accept_next_alert = True

    def test_aa(self):
        driver = self.driver
        driver.get(self.base_url + "/")
        driver.find_element_by_link_text(u"Ma vente aux enchères").click()
        driver.find_element_by_link_text(u"Aidez-moi").click()
        driver.find_element_by_link_text(u""L'ID ou le mot de passe est incorrect" s'affiche").click()
        # ERROR: Caught exception [ERROR: Unsupported command [captureEntirePageScreenshot | /Users/owner/a.jpg | ]]
        driver.save_screenshot("a.jpg ")

    def is_element_present(self, how, what):
        try: self.driver.find_element(by=how, value=what)
        except NoSuchElementException, e: return False
        return True

    def is_alert_present(self):
        try: self.driver.switch_to_alert()
        except NoAlertPresentException, e: return False
        return True

    def close_alert_and_get_its_text(self):
        try:
            alert = self.driver.switch_to_alert()
            alert_text = alert.text
            if self.accept_next_alert:
                alert.accept()
            else:
                alert.dismiss()
            return alert_text
        finally: self.accept_next_alert = True

    def tearDown(self):
        self.driver.quit()
        self.assertEqual([], self.verificationErrors)

if __name__ == "__main__":
    unittest.main()

Prise en charge de l'authentification de base

selenium.py


- self.base_url = "http://secret.page.local/"
+ self.base_url = "http://username:[email protected]/"

prise en charge des icônes de bureau xfce4

google.selenium


#!/bin/sh
python google.py

Vous pouvez préparer quelque chose comme ci-dessus et double-cliquer dessus.

Empêcher Firefox de se fermer automatiquement

google.py


+   #def tearDown(self):
+       #self.driver.quit()
+       #self.assertEqual([], self.verificationErrors)

Recommended Posts

Utilisez Firefox avec Selenium depuis python et enregistrez la capture d'écran
Python: travailler avec Firefox avec du sélénium
Grattage avec Python, Selenium et Chromedriver
Obtenez une capture d'écran Web avec python
Faites fonctionner Jupyter avec l'API REST pour extraire et enregistrer le code Python
[Python3] Enregistrez la matrice de moyenne et de covariance dans json avec les pandas
Obtenir le code HTML de l'élément avec du sélénium Python
Faites fonctionner des appareils électroménagers avec Python et IRKit
Pratiquer le web scraping avec Python et Selenium
Remplissez la chaîne avec des zéros en python et comptez certains caractères de la chaîne
[python] Envoyez l'image capturée de la caméra Web au serveur et enregistrez-la
Installez Chrome en ligne de commande sur Sakura VPS (Ubuntu) et lancez Chrome avec python à partir de l'affichage virtuel et du sélénium
Essayez d'exécuter Google Chrome avec Python et Selenium
Faites glisser et déposez un fichier local avec Selenium (Python)
Archivez et compressez tout le répertoire avec python
Deep Learning from scratch La théorie et la mise en œuvre de l'apprentissage profond appris avec Python Chapitre 3
Récupération des informations sur l'écriture, la composition et l'arrangement du site Tower Records avec Python
Essayez la touche d'un test basé sur les données avec Selenium Python Bindings et py.test
Apprenez Nim avec Python (dès le début de l'année).
Utilisez FireFox (via Homebrew-cask) avec les liaisons Selenium WebDriver Python
Installez le sélénium sur votre Mac et essayez-le avec python
Essayez le fonctionnement de la base de données avec Python et visualisez avec d3
Extraire des images et des tableaux de pdf avec python pour réduire la charge de reporting
J'ai essayé d'automatiser la mise à jour de l'article du blog Livedoor avec Python et sélénium.
Visualisez la gamme d'insertions internes et externes avec python
Utiliser Kinesis avec Python
Suivi automatique sur Twitter avec python et sélénium! (RPA)
Faites fonctionner le neutron de Python!
ScreenShot avec Selenium (édition Python)
Faire fonctionner Blender avec Python
Faire fonctionner LXC depuis Python
Installez la dernière version stable de Python avec pyenv (à la fois 2 et 3)
Recevoir des e-mails de Gmail et étiqueter avec Python3
Grattage avec du sélénium [Python]
Automatisez Chrome avec Python et Selenium sur votre Chromebook
Installez le dernier Python de pyenv installé par homebrew
Traduisez automatiquement DeepL en anglais avec Python et Selenium
Utiliser Excel avec Python (1)
python + sélénium + safari-run iphone safari de mac avec webdriver
Remarques sur la façon d'utiliser Firefox avec du sélénium sous Windows
Utiliser Excel avec Python (2)
Je veux découper uniquement le visage d'une image de personne avec Python et l'enregistrer ~ Détection de visage et rognage avec face_recognition ~
Mélangez les images dans n'importe quel répertoire avec Python et enregistrez-les dans un autre dossier avec des numéros de série.
Mettez Ubuntu dans Raspi, mettez Docker dessus et contrôlez GPIO avec python à partir du conteneur
Enregistrez la vidéo d'entrée du tableau de capture sous forme d'image
Essayez d'utiliser l'API Twitter rapidement et facilement avec Python
écran et écran partagé avec connexion python et ssh au serveur distant
J'ai essayé d'utiliser la bibliothèque Python de Ruby avec PyCall
Résolvez le livre en spirale (algorithme et structure de données) avec python!
Reconnaissez votre patron avec Deep Learning et masquez l'écran
[Python] J'ai installé le jeu depuis pip et j'ai essayé de jouer
Hash avec python et échapper à l'égosa d'un certain ministre
Enregistrer des images sur le Web sur un lecteur avec Python (Colab)
Utilisez le navigateur à l'aide des liaisons Python du pilote Web Selenium
Jouez avec le mécanisme de mot de passe de GitHub Webhook et Python
Programmation avec Python et Tkinter
Exploitez Excel avec Python open pyxl
Chiffrement et déchiffrement avec Python
Exploitez TwitterBot avec Lambda, Python
Grattage au sélénium en Python