ホームページ  >  記事  >  バックエンド開発  >  Python、Selenium、Chrome を使用した主要な自動化操作の例

Python、Selenium、Chrome を使用した主要な自動化操作の例

黄舟
黄舟オリジナル
2018-05-15 09:30:562306ブラウズ

Python、Selenium、Chrome のプライマリ自動化操作の例

#coding=utf-8from selenium import webdriver
import os,time

chromedriver = "C:\Users\li.liu\AppData\Local\Google\Chrome\chromedriver.exe"'''environ是一个字符串所对应环境的映像对象;
os.environ.keys()  主目录下所有的key
os.environ 显示key+内容。

windows:
· os.environ['HOMEPATH']:当前用户主目录。
os.environ['TEMP']:临时目录路径。
os.environ[PATHEXT']:可执行文件。
os.environ['SYSTEMROOT']:系统主目录。
os.environ['LOGONSERVER']:机器名。
os.environ['PROMPT']:设置提示符。
linux:
os.environ['USER']:当前使用用户。
os.environ['LC_COLLATE']:路径扩展的结果排序时的字母顺序。
os.environ['SHELL']:使用shell的类型。
os.environ['LAN']:使用的语言。
os.environ['SSH_AUTH_SOCK']:ssh的执行路径。'''os.environ["webdriver.chrome.driver"] = chromedriver

driver =  webdriver.Chrome(chromedriver)

driver.get("http://baidu.com")
time.sleep(3)
print (u'窗口最大化')
driver.maximize_window()
a=driver.title

print a
time.sleep(1)
driver.find_element_by_id('kw').send_keys('selenium')

driver.find_element_by_id('su').click()



driver.quit()

例 2.

#coding=utf-8from selenium import webdriver
import os,time,unittest
import log
import logging
import traceback
logger = log.Logger('e:/1/web_log.log',clevel = logging.DEBUG,Flevel = logging.INFO)
def f(n):
    logger.info(n)
    print n    
    
class baidu(unittest.TestCase):
    def setUp(self):
        
        self.chromedriver='C:\Users\li.liu\AppData\Local\Google\Chrome\chromedriver.exe'
        os.environ['webdriver.chrome.driver']=self.chromedriver
        self.driver=webdriver.Chrome(self.chromedriver)
        print u'驱动定义完成'
    def test_baidu_search(self):
        u"""百度搜索"""        
        driver = self.driver
        f(u'打开百度')
        driver.maximize_window()
        driver.get('http://baidu.com')
        time.sleep(2)
        print u'打开另一个网址'
        driver.get('http://news.baidu.com')
        print u'窗口最大化'
        driver.maximize_window()
        time.sleep(1)
        print u'返回上一个网页'
        driver.back()
        time.sleep(3)
        driver.forward()
        time.sleep(2)
        driver.back()
        time.sleep(1)
        driver.close()
        driver.quit()

    def test_baidu_set(self):
        driver = self.driver
        driver.get('http://baidu.com')
        time.sleep(3)        
        driver.find_element_by_id('kw').send_keys(u'测试')
        driver.find_element_by_id('su').click()
        time.sleep(2)
        driver.find_element_by_id('kw1').clear()
        driver.find_element_by_id('kw').send_keys(u'测试用例')
        time.sleep(3)
        print u'关闭浏览器'
        driver.close()
        print u'退出浏览器服务'
        driver.quit()    

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

ブラウザ開発者モード

FireFox——>Firebug フロントエンド ツール、および Chrome ブラウザの場合——> 右クリック選択「要素の検査」またはショートカット キー F12 を押すと、開発者が作成したコードが表示されます。これは、テスト オブジェクト (テスト コントロール) の特定のプロパティを取得するのに非常に役立ちます。

bブラウザの基本操作

ブラウザウィンドウの最大化とサイズ設定、前後方向の設定
注意点をいくつかご紹介します:
XXXX.get (URL) URLアドレスにアクセスします
time.sleep( ns) 待ち時間
XXXX.back() 前のブラウザに戻る
XXXX.forward() 次のブラウザに進む
XXXX.set_window_size(width,height) width,height 必要に応じて自分で設定できます。
XXXX.maximize() ウィンドウを最大化する
XXXX.title ブラウザのタイトルを取得する
XXXX.quit() ブラウザを終了する
XXXX.close() ブラウザを閉じる

スクリプト動作の安定性を確保する
browser=webdriver.Chrome() —>Chrome ブラウザを呼び出します
print() ステートメントを使用して、スクリプトが正しく実行されているかどうかを確認します

以上がPython、Selenium、Chrome を使用した主要な自動化操作の例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。