Python + Selenium環境のインストールと構成および例

1Pythonをインストールします

Python3.6をダウンロード

注:python3.6インストールパッケージが手元にある場合は、Python3.6をダウンロードする手順をスキップしてください。

python3.6.xをダウンロードします。公式ウェブサイトのダウンロードアドレスはhttps://www.python.org/downloads/です。適切なバージョンを選択し、[ダウンロード]をクリックして、ダウンロードページに入ります。

 

 

ダウンロードページで実行可能インストーラー形式のファイルを選択し、クリックしてダウンロードします。

 

Pythonをインストールする

ダウンロードしたpython-3.6.4.exeをダブルクリックし、ダウンロードしたEXEインストールパッケージを実行します。[Python3.6をパスに追加]を必ずオンにしてください。チェックしないと、特に不便になります。次に、[今すぐインストール]をクリックしてインストールします。

 

 

 

Pythonを実行する

インストールが成功したら、CMDコマンドプロンプトウィンドウを開いてpythonと入力します。次のようなものが表示された場合は、pythonのインストールが成功しています。表示されない場合は、[Python3.6をパスに追加]がオンになっていない可能性があります。インストールプロセス中。環境変数の追加については、オンラインのPythonチュートリアルを参照してください。

 

2セレンをインストールします

CMDウィンドウを開き、次のように入力します。

pip3はセレンをインストールします

セレンは自動的にインストールされます。エラーが報告されず、インストールが成功した場合、セレンは正常にインストールされます。

インストールが成功し、正常に使用できるかどうかを確認できます。確認方法は次のとおりです。

Pythonに付属のIELDを開き、selenium importwebdriverから入力して、Enterキーを押します。エラーが報告されない場合、セレンは正常にインストールされ、正常に使用できます。

 

3pycharmをインストールします

基本環境をインストールしたら、スクリプトを書くための使いやすいIDEが必要です。個人的にpycharmをお勧めします。自分の好みに応じて選択することもできます。

  行くしhttps://www.jetbrains.com/pycharm/download/#section=windows pycharmをダウンロードしてください。Professionalはプロフェッショナルバージョンで強力ですが、課金する必要があります

コミュニティはコミュニティバージョンであり、通常は機能を使用でき、無料です

個人のニーズに合わせてお選びいただけます。

 

 

具体的なインストール手順と使用方法については、オンライン資料を参照してください。

 

4 Firefox(Firefox)ブラウザと関連プラグインをインストールします

Firefoxブラウザをインストールする必要があるのはなぜですか?その理由は、Firefoxブラウザに使用する必要のある2つのプラグインがあるためです。

Selenium IDE:スクリプトの記録を実現できます

Firebug:要素を見つけるのを手伝ってください

4.1Firefoxをインストールする

まず、Firefoxをダウンロードします。SeleniumIDEは最新バージョンのFirefoxブラウザーをサポートできないため、Firefoxバージョン54を選択します。ダウンロードリンクは次のとおりです。

1.   http://ftp.mozilla.org/pub/firefox/releases/54.0/win64/zh-CN/

2. Firefoxの複数のバージョンのリンクをダウンロードします(非常に重要):http:    //ftp.mozilla.org/pub/firefox/releases/              

インストールプロセスは省略されます

次に、Firefoxブラウザーを開き、をクリックしてから、をクリックして設定ページ入ります。

自動更新後にfirfoxがSeleniumIDEをサポートしないようにするために、[詳細設定] >> [更新] >> [更新を確認しない]をクリックします。

 

 

4.2 SeleniumIDEプラグインをインストールする

Firefoxブラウザでリンクを開きます。

https://addons.mozilla.org/en-US/firefox/addon/selenium-ide/

次の画面が表示されたら、[+ Firefoxに追加]をクリックしてプラグインを追加します。インストール後、ブラウザを再起動して有効にします。

 

 

ブラウザを再起動した後、Selenium IDEを開くと、次のインターフェイスが表示され、プラグインが正常に追加されます。

 

 

4.3Firebugプラグインを追加する

Firefoxブラウザでリンクを開きます。

https://addons.mozilla.org/zh-CN/firefox/addon/firebug/

次の画面が表示されたら、[+ Firefoxに追加]をクリックしてプラグインを追加します。インストール後、ブラウザを再起動して有効にします。

ブラウザを再起動した後、キーボードのF12を押して次のインターフェイスを取得すると、プラグインが正常に追加されます。

 

5Firefoxドライバーをインストールします

上記の環境がインストールされているので、そのような問題を考える必要があります。PythonとSeleniumはブラウザをどのように操作しますか?

 

ブラウザのドライバをインストールする必要があります。ブラウザによってドライバが異なります。Firefoxの場合は、次のリンクを開く必要があります。

 

https://github.com/mozilla/geckodriver/releases

 

私は64ビットのWindowsシステムなので、適切なバージョンを選択します。そのため、geckodriver-v0.19.1-win64.zipをダウンロードすることにしました。

 
 
 

ダウンロードが完了したら、geckodriver-v0.19.1-win64.zipをpythonのルートレコードに解凍します。ここで、私のPythonインストールパスはE:\ Python \ Python36-32 \ Scriptsなので、E:\ Python \ Python36-32 \ Scriptsに解凍します。

 

6環境全体とコードをテストします

 次のコードを実行します。Tinglvシステムページを正常に開くことができる場合は、環境がセットアップされています。

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 Pyauto0808(unittest.TestCase):
    def setUp(self):
        self.driver = webdriver.Firefox()
        self.driver.implicitly_wait(5)
        self.base_url = "https://www.imguider.com/manager/index.html"
        self.verificationErrors = []
        self.accept_next_alert = True
    
    def test_pyauto0808(self):
        driver = self.driver
        driver.get(self.base_url + "/manager/index.html")
        driver.find_element_by_name("username").clear()
        driver.find_element_by_name("username").send_keys("erha")
        driver.find_element_by_name("password").clear()
        driver.find_element_by_name("password").send_keys("erha123")
        driver.find_element_by_id("login").click()
        driver.find_element_by_css_selector("span.title").click()
        driver.find_element_by_css_selector("li.orders > a > span.title").click()
        driver.find_element_by_link_text("2").click()
        driver.find_element_by_link_text("3").click()
        driver.find_element_by_xpath("//div[@id='left']/div/ul/li[8]/a/span").click()
        driver.find_element_by_link_text(u"优惠券管理").click()
        driver.find_element_by_id("add-coupon2").click()
        driver.find_element_by_css_selector("input.layui-layer-input").clear()
        driver.find_element_by_css_selector("input.layui-layer-input").send_keys("1")
        driver.find_element_by_link_text(u"确定").click()
        driver.find_element_by_css_selector("input.layui-layer-input").clear()
        driver.find_element_by_css_selector("input.layui-layer-input").send_keys("0808")
        driver.find_element_by_link_text(u"何晨").click()
        driver.find_element_by_link_text(u"退出登录").click()
    
    def is_element_present(self, how, what):
        try: self.driver.find_element(by=how, value=what)
        except NoSuchElementException as e: return False
        return True
    
    def is_alert_present(self):
        try: self.driver.switch_to_alert()
        except NoAlertPresentException as 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()

 

 

 

おすすめ

転載: blog.csdn.net/yang520java/article/details/81513284