Python自动化xpath实现自动抢票抢货


Posted in Python onSeptember 19, 2020

小伙伴们,这次推文讲的是‘xpath‘,掌握起来不难的哦。而且,熟悉了这套路,别说pubmed,任何你能在浏览器实现的操作,都基本能通过selenium自动化进行。

总代码:

for i in range(51,56):
  driver.implicitly_wait(10)
  ActionChains(driver).move_to_element(driver.find_element_by_xpath('//*[@id="save-results-panel-trigger"]')).click().perform()

  Select(driver.find_element_by_xpath('//*[@id="save-action-selection"]')).select_by_visible_text("All results on this page")
  ActionChains(driver).move_to_element(driver.find_element_by_xpath('//*[@id="save-action-format"]')).click().perform()
  Select(driver.find_element_by_xpath('/html/body/main/div[1]/div/form/div[2]/select')).select_by_visible_text("CSV")
  ActionChains(driver).move_to_element(driver.find_element_by_xpath('//*[@id="save-action-panel-form"]/div[3]/button[1]')).click().perform()

  target =driver.find_element_by_xpath('//*[@id="search-results"]/section/div[3]/a/span')

  driver.execute_script("arguments[0].();", target)
  ActionChains(driver).move_to_element(driver.find_element_by_xpath('//*[@id="search-results"]/section/div[3]/a/span')).click().perform()
  ActionChains(driver).move_to_element(driver.find_element_by_xpath('//*[@id="search-page"]/div[12]/div/form/button')).click().perform()
  print('第'+str(i)+'页下载成功')
  print('跳转第'+str(i+1)+'页面中')
driver.quit()
print('全部下载完毕,自动退出。')

代码1

Python自动化xpath实现自动抢票抢货

for i in range(1,50+1): printg('我错了')

Python自动化xpath实现自动抢票抢货

Python自动化xpath实现自动抢票抢货

操作如下:鼠标移动到Save按钮→鼠标右击→检查,

可以发现源代码有一块区域亮起来了

这块区域就是Save按钮对应的源代码→鼠标移动到该源代码区域→右击→复制→复制XPath,

这样我们就复制了Save按钮的Xpath了,接下来只需要粘贴到代码就行.

Python自动化xpath实现自动抢票抢货

Python自动化xpath实现自动抢票抢货

小伙伴们是否还记得ActionChains的万能公式:

ActionChains(driver).move_to_element(driver.find_element_by_xpath('xpath_content')).click().perform()

我们只需要把刚才复制的xpath粘贴到代码中的“xpath_content”区域就行

是不是很熟悉呢,是的,这便是我们使用ActionChains模块实现的第一个操作,后续的一样噢,只需要复制对应的Xpath直接粘贴就行了。

Python自动化xpath实现自动抢票抢货

最后,因为以上均是循环体的内容,当代码执行完整个循环体了,我们可以通过代码直接关掉浏览器,提醒我们打印完了,代码如下

driver.quit()
print('全部下载完毕,结束了')

因为这两句代码已经不是循环体的内容了,所以无需另起一行空两个,而且,小伙伴记得噢,所有字符都是英文字符,包括括号、引号等等。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python比较文件夹比另一同名文件夹多出的文件并复制出来的方法
Mar 05 Python
python下载文件时显示下载进度的方法
Apr 02 Python
详解MySQL数据类型int(M)中M的含义
Nov 20 Python
200行自定义python异步非阻塞Web框架
Mar 15 Python
CentOS中升级Python版本的方法详解
Jul 10 Python
Python编程使用tkinter模块实现计算器软件完整代码示例
Nov 29 Python
python实现简单的单变量线性回归方法
Nov 08 Python
详解分布式任务队列Celery使用说明
Nov 29 Python
对python实现合并两个排序链表的方法详解
Jan 23 Python
python3.8.1+selenium实现登录滑块验证功能
May 22 Python
Python中logger日志模块详解
Aug 04 Python
Python 语言实现六大查找算法
Jun 30 Python
python 贪心算法的实现
Sep 18 #Python
详解KMP算法以及python如何实现
Sep 18 #Python
python实现二分查找算法
Sep 18 #Python
Python自定义sorted排序实现方法详解
Sep 18 #Python
python爬虫爬取网页数据并解析数据
Sep 18 #Python
Python实现迪杰斯特拉算法过程解析
Sep 18 #Python
Python 操作 MySQL数据库
Sep 18 #Python
You might like
php检测数组长度函数sizeof与count用法
2014/11/17 PHP
深入剖析浏览器退出之后php还会继续执行么
2016/05/17 PHP
Yii2第三方类库插件Imagine的安装和使用
2017/07/06 PHP
windows下的WAMP环境搭建图文教程(推荐)
2017/07/27 PHP
在javascript将NodeList作为Array数组处理的方法
2010/07/09 Javascript
扩展Jquery插件处理mouseover时内部有子元素时发生样式闪烁
2011/12/08 Javascript
javascript常见用法总结
2014/05/22 Javascript
jQuery使用模式窗口实现在主页面和子页面中互相传值的方法
2016/03/01 Javascript
AngularJS教程之环境设置
2016/08/16 Javascript
Bootstarp 基础教程之表单部分实例代码
2017/02/03 Javascript
Node.js引入UIBootstrap的方法示例
2018/05/11 Javascript
Angular 利用路由跳转到指定页面的指定位置方法
2018/08/31 Javascript
浅谈webpack SplitChunksPlugin实用指南
2018/09/17 Javascript
vue-router之nuxt动态路由设置的两种方法小结
2018/09/26 Javascript
vue3.0中友好使用antdv示例详解
2021/01/05 Vue.js
[02:20]DOTA2亚洲邀请赛 IG战队出场宣传片
2015/02/07 DOTA
Python实现windows下模拟按键和鼠标点击的方法
2015/03/13 Python
Windows和Linux下Python输出彩色文字的方法教程
2017/05/02 Python
Python 模拟员工信息数据库操作的实例
2017/10/23 Python
获取python文件扩展名和文件名方法
2018/02/02 Python
python机器学习之随机森林(七)
2018/03/26 Python
python实现视频分帧效果
2019/05/31 Python
Python3 filecmp模块测试比较文件原理解析
2020/03/23 Python
CSS3实现可关闭的下拉手风琴菜单效果
2015/08/31 HTML / CSS
香港现代设计家具品牌:Ziinlife Furniture
2018/11/13 全球购物
事业单位请假制度
2014/01/13 职场文书
端午节活动策划方案
2014/03/09 职场文书
党的群众路线教育实践活动个人剖析材料
2014/10/07 职场文书
支行行长竞聘报告
2014/11/06 职场文书
2015年乡镇党务公开工作总结
2015/05/19 职场文书
无违反计划生育证明格式
2015/06/24 职场文书
2015大学迎新晚会策划书
2015/07/16 职场文书
2016年七夕爱情寄语
2015/12/04 职场文书
基于Redis位图实现用户签到功能
2021/05/08 Redis
Golang日志包的使用
2022/04/20 Golang
python数据处理之Pandas类型转换
2022/04/28 Python