Rumah  >  Artikel  >  pembangunan bahagian belakang  >  python与selenium以及chrome初级自动化操作的实例

python与selenium以及chrome初级自动化操作的实例

黄舟
黄舟asal
2018-05-15 09:30:562318semak imbas

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()

a浏览器开发者模式

FireFox——>Firebug前端工具,而对于Chrome浏览器——>右键选择‘审查元素’或者快捷键 F12 ,即可看到一些开发写的code,这对于获取测试对象(测试控件)的某些属性很有帮助。

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( ) 浏览器关闭

import time —>保证脚本运行的稳定性
browser=webdriver.Chrome() —>调用Chrome浏览器
使用print()语句可以查看脚本是否运行正确

Atas ialah kandungan terperinci python与selenium以及chrome初级自动化操作的实例. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn