selenium的使用

selenium 的基本使用

页面元素定位

  • 用法
  • find_element_by_id(返回一个)
  • find_elements_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
    注意点:
    1.find_element和find_elements的区别:返回一个和返回一个列表
    2.by_link_text和by_partial_link_text的区别:全部文本和包含某个文本
    3.by_css_selector的用法: # food span.dairy.aged
    4.by_xpath中获取属性和文本需要使用get_attribute()和.text

页面等待
1.为什么需要等待
因为如果网站采用动态html技术,那么页面上的部分元素出现时间就不能确定了,所以我们就可以设置一个等待时间,强制要求在时间内出现,否则报错
2.强制等待
time.sleep(3) # 当网站执行3秒之后再执行程序

selenium使用的注意点

  • 获取文本和获取属性

  • 先定位到元素,然后调用‘.text’或者’get_attribute()’方法来取

  • selenium获取页面数据是浏览器中elements的内容

  • find_element和find_elements的区别

  • find_element返回一个element,如果没有会报错

  • find_elements返回一个列表,没有就是空列表

  • 在判断是否有下一页的时候,使用find_elements来根据结果的列表长度来判断

  • 如果页面中含有iframe、frame,需要先调用driver中的switch_to.frame()的方法切换到frame中才能定位元素

  • selenium 请求第一页的时候会等待页面加载完了之后再获取数据,但是再点击翻页之后,hi会直接获取数据,此时可能会报错,因为数据还没有加载出来,需要time.sleep(3)

Cookie
cookie相关用法
使用字典推导式:一般在网页上抓取的cookies,可以进行字典推导式,转化为字典

  • {cookie[“name”]: cookie[“value”] for cookie in driver.get_cookies()}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值