2021-04-21

第三章 通过Selenium模拟浏览器抓取

Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,浏览器自动按照脚本代码做出单击、输入、验证等操作,就像用户在操作一样
安装:pip install Selenium
安装浏览器驱动 driver,需注意浏览器driver需要放在python scripts路径下,并将路径加入系统环境变量
例:

from selenium import webdriver
driver = webdriver.Chrome()
driver.get("http://www.baidu.com/")

selenium通过抓取元素来定定位所选中的所要进行的操作
例:
find_element_by_css_selector:通过元素的class选者,如,

test
,可以使用driver.find_element_by_css_selector(“div.bdyinner”).
find_element_by_xpath:通过xpath选者,如, 可以使用driver.find_element_by_xpath("//form[@id=“loginForm”]")
find_element_by_id:通过元素的id选择,如
test
可以使用 driver.find_element_by_id(“bdy-inner”)
find_element_by_name:通过元素的name选择,如<div name="username"type=“text”/>,可以使用find_element_by_name(“username”)
find_element_by_link_text:通过链接地址选择,如 Continue可以使用,driver.find_element_by_link_text(“Continue”)
find_element_by_partial_link_text:通过链接的部分地址选择,如 Continue 可以使用,driver.find_element_by_partial_link_text(“Conti”)
find_element_by_tag_name:通过元素的名称选择,如

Welcome

可以使用driver,find_element_by_tag_name(“h1”)
find_element_by_class_name:通过元素的class选择,如

Site content goes here.

可以使用,driver.find_element_by_class_name(“content”)
需要找多个元素时,可以在element后面加s,变成elements
xpath和css_selector 是比较好的方法,一方面清晰,一方面对其它方法定位元素比较准确
常见的操作元素方法:
Clear:清除元素的内容
send_keys:模拟按键输入
Click:单击元素
Submiit:提交表单

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值