学习selenium,实现什么值得买自动登录并签到

最初想分析数据包,用requests加上登录状态的cookies发送请求来实现张大妈的自动签到功能,但怎么也抓不到签到的这个数据包,可能是写进js里了吧,将来再慢慢分析。正好想学selenium,于是就学用selenium来实现。环境win7 + python3.6 + selenium + Chromeselenium稍许有些大,国内使用官方源速度慢经常失败,建议使用国内镜像pyth...
摘要由CSDN通过智能技术生成

最初想分析数据包,用requests加上登录状态的cookies发送请求来实现张大妈的自动签到功能,但怎么也抓不到签到的这个数据包,可能是写进js里了吧,将来再慢慢分析。
正好想学selenium,于是就学用selenium来实现。

环境

win7 + python3.6 + selenium + Chrome
selenium稍许有些大,国内使用官方源速度慢经常失败,建议使用国内镜像

python -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple selenium

除了要安装Chrome,还需对照Chrome版本号下载相应版本的chromedriver
下载地址:http://chromedriver.storage.googleapis.com/index.html
版本号对照:https://sites.google.com/a/chromium.org/chromedriver/downloads

下载解压后得到chromedriver.exe文件,复制到windows环境变量的path包含的目录内,一般放在python安装目录里的scripts目录。(放置的目录必须包含在path内,否则无法找到运行该driver)

基础功能实现

对于浏览网页的最基本操作,不外乎打开浏览器、打开网站、找到需要的链接按钮等控件、对控件进行如点击拖拽等操作、输入文字,将这些动作与代码对照起来就更容易理解了

手动操作 程序操作 代码
打开浏览器 初始化浏览器 browser = webdriver.Chrome()
打开网站 浏览器加载网站 browser.get('http://www.smzdm.com')
找到按钮 定位按钮 button = browser.find_element_by_class_name('按钮的class')
点击按钮 模拟点击按钮 button.click()
找到输入框 定位输入框 input = browser.find_element_by_id('输入框的id')
输入文字 将文字发送至输入框 input.send_keys('######')

其中定位方法可根据需要选择class、id、css选择器等等:

find_element_by_id
find_element_by_name
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

以上这些是选择单个元素,若存在多个符合条件的也只选择第一个元素,若要选择所有符合条件的元素,应使用复数单词elements,如find_elements_by_id,这样得到的是一个列表,列表里每个元素就是符合条件的元素。

实现代码

from selenium import webdriver

# 初始化浏览器
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值