Python中Webdriver库的使用
Posted 漫谈测试
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python中Webdriver库的使用相关的知识,希望对你有一定的参考价值。
1.selenium可以模拟真实浏览器,自动化测试工具,支持多种浏览器,爬虫中主要用来解决javascript渲染问题。
2.用python写爬虫的时候,主要用的是selenium的Webdriver
3.支持Web而不需要浏览器支持,其快速、原生支持各种Web标准:Dom处理,CSS选择器,JSON等等。
4.PhantomJS可以用用于页面自动化、网络监测、网页截屏,以及无界面测试
5.获取元素类型
find_element_by_name
find_element_by_id
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
6.获取元素方式https://www.cnblogs.com/xiao-xue-di/p/10932504.html
7.常用的判断条件:
title_is 标题是某内容
title_contains 标题包含某内容
presence_of_element_located 元素加载出,传入定位元组,如(By.ID, 'p')
visibility_of_element_located 元素可见,传入定位元组
visibility_of 可见,传入元素对象
presence_of_all_elements_located 所有元素加载出
text_to_be_present_in_element 某个元素文本包含某文字
text_to_be_present_in_element_value 某个元素值包含某文字
frame_to_be_available_and_switch_to_it frame加载并切换
invisibility_of_element_located 元素不可见
element_to_be_clickable 元素可点击
staleness_of 判断一个元素是否仍在DOM,可判断页面是否已经刷新
element_to_be_selected 元素可选择,传元素对象
element_located_to_be_selected 元素可选择,传入定位元组
element_selection_state_to_be 传入元素对象以及状态,相等返回True,否则返回False
element_located_selection_state_to_be 传入定位元组以及状态,相等返回True,否则返回False
alert_is_present 是否出现Alert
8.浏览器的前进和后退
前进:forward()
后退:back()
import time
from selenium import webdriver
browser = webdriver.Chrome()
browser.get('https://www.baidu.com/')
browser.forward()
time.sleep(10)
browser.get('https://weibo.com/login.php')
time.sleep(5)
browser.get('https://www.taobao.com/')
browser.back()
time.sleep(10)
browser.get('https://weibo.com/login.php')
browser.back()
time.sleep(30)
browser.forward()
time.sleep(15)
browser.close()
以上是关于Python中Webdriver库的使用的主要内容,如果未能解决你的问题,请参考以下文章
使用 webdriver 在 Chrome 中运行 Python