Selenium是一个Web的自动化测试工具1
pip install selenium
PhantomJS 是一个基于Webkit的“无界面”(headless)浏览器,它会把网站加载到内存并执行页面上的 JavaScript
< PhantomJS 是一个功能完善(虽然无界面)的浏览器而非一个 Python 库,所以它不需要像 Python 的其他库一样安装,但我们可以通过Selenium调用PhantomJS来直接使用 >1
2
3
4
5
6
7
8
9
10
11# WebDriver 有点儿像可以加载网站的浏览器
from selenium import webdriver
# 调用环境变量指定的PhantomJS浏览器创建浏览器对象
driver = webdriver.PhantomJS()
# get方法会一直等到页面被完全加载
driver.get(url)
<!----------more----------->
#查看页面快照
driver.save_screenshot("abc.png")
driver.quit()
元素的选取
find_element_by_id()
1 | for example: |
find_elements_by_name()
1 | for example: |
find_elements_by_xpath()
1 | for example: |
find_elements_by_link_text()
1 | for example: |
find_elements_by_partial_link_text()
1 | for example: |
find_elements_by_tag_name()
1 | for example: |
find_elements_by_class_name()
1 | for example: |
find_elements_by_css_selector()
1 | for example: |
鼠标动作链
1 | #导入 ActionChains 类 |
下拉框
1 |
|
页面切换
1 | driver.switch_to.window("this is window name").click() |
页面前进和后退
1 | driver.forward() #前进 |
执行js
1 | driver.execute_script(js) |
隐式等待
1 | from selenium import webdriver |
显示等待
1 | title_is |