python的自动化模块–selenium
我用的是Google 的浏览器Chrome,当然首先你得安装好selenium
pip install selenium
安装之后还需要安装Chrome的驱动:http://chromedriver.storage.googleapis.com/index.html?path=2.30/
安装在chrome的目录下面,同时记得设置环境变量,添加chrome的安装目录到环境变量中去,
那么第一个测试代码为
from selenium import webdriver
browser=webdriver.Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
browser.get('http://www.baidu.com')
一开始运行,就会打开chrome,跳转到百度的也面了,第一步就算成功了
第二段测试代码
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
# 模拟提交--搜索的功能
driver=webdriver.Chrome("C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe")
driver.get('http://www.python.org')
assert"Welcome" in driver.title
elem=driver.find_element_by_name('q')
elem.send_keys('pycon')
elem.send_keys(Keys.RETURN)
print(driver.page_source)
代码解析:
assert测试是否网页准确,
elem=driver.find_element_by_name('q')
这一句是webdriver用来搜索网页元素的,其他还有
个输入框可以通过 find_element_by_name 方法寻找 name 属性来确定。
这是单个元素的选取:
find_element_by_id
find_element_by_name
find_element_by_xpath
find_element_by_link_text
find_element_by_partial_link_text
find_element_by_tag_name
find_element_by_class_name
find_element_by_css_selector
这是多个网页元素的选取
find_elements_by_name
find_elements_by_xpath
find_elements_by_link_text
find_elements_by_partial_link_text
find_elements_by_tag_name
find_elements_by_class_name
find_elements_by_css_selector