Python爬虫工具 Selenium webdriver -自动化测试工具

Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,Selenium 可以直接运行在浏览器上,它支持所有主流的浏览器(包括PhantomJS这些无界面的浏览器),可以接收指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏。

from selenuum import webdriver

<!--创建url-->
url = "http://www.baidu.com"

<!--创建浏览器驱动,这里以Chrome为例-->
driver = webdriver.Chrome()

<!--发起请求-->
driver.get(url)

<!--保存快照-->
driver.save_screenshot('baidu.png')

<!--8种标签定位方法,获取输入框-->

-----获取单个标签,结果为标签对象------
find_element_by_XXXX 

<!--1 通过id获取标签-->
el = driver.find_element_by_id('kw')
<!--2 通过css选择器获取标签-->
<!--同时满足多种选择器---input[name="username"][type="text"]-->
el = driver.find_element_by_css_selector('#kw')  # 括号里可以为class,id属性 .kw #kw
<!--3 通过class属性获取标签-->
el = driver.find_element_by_class_name('s_ipt')
<!--4 通过name属性获取标签-->
el = driver.find_element_by_name('wd')
<!--5 通过xpath获取标签-->
el = driver.find_element_by_xpath('//*[@id="u1"]/a[2]')
<!--6 匹配标签名-->
el = driver.find_element_by_tag_name('input')
<!--7 主要针对a标签,匹配a标签里的文字-->
el = driver.find_element_by_link_text('abccd')
<!--8 升级版:主要针对a标签,模糊匹配a标签里的文字-->
el = driver.find_element_by_partial_link_text("cc")

-----获取多个标签,结果为标签对象列表------
find_elements_by_XXXX 

<!--查看标签属性-->
el.get_attribute("type")

<!--获取标签内文本-->
el.text

<!--查看所有标签列表-->
window_list = driver.window_handles

<!--切换列表-->
driver.switch_to.window(window_list[1])

<!--模拟输入框输入-->
el.send_keys("哈哈哈")

<!--模拟点击-->
el.click()

<!--获取响应后的数据-->
<!--源码--二进制-->
driver.page_source
<!--cookies-->
driver.get_cookies()
<!--标题和当前url-->
driver.title
driver.current_url

<!--响应获取数据后要关闭,释放内存-->
driver.close()
driver.quit()

如果一个页面中有框架,需要先进入,再在框架内进行定位获取标签

el_iframe = driver.find_element_by_xpath('//*[@id="login_frame"]')
<!--进入框架-->
driver.switch_to.frame(el_iframe)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值