python模拟点击网页按钮实现方法


Posted in Python onFebruary 25, 2020

python怎么模拟点击网页按钮

前提环境: Python3 和 Visual Studio Code安装完毕

安装selenium : 在终端输入: pip install selenium, 如图

python模拟点击网页按钮实现方法

下载chromedriver : 登录http://chromedriver.storage.googleapis.com/index.html 下载 (与浏览器对应版本请上网查阅)

下载后将chromedriver.exe文件放至 python.exe所在目录 如: D:\Program Files\Python

模拟情景: 打开百度网页,输入小米,进行搜索

#coding=utf-8
from selenium import webdriver
import time
import re

opt = webdriver.ChromeOptions()   #创建浏览
# opt.set_headless()    #无窗口模式
driver = webdriver.Chrome(options=opt)  #创建浏览器对象
driver.get('https://www.baidu.com/') #打开网页
# driver.maximize_window()   #最大化窗口
time.sleep(2)     #加载等待
driver.find_element_by_xpath("./*//span[@class='bg s_ipt_wr quickdelete-wrap']/input").send_keys("魅族") #利用xpath查找元素进行输入文本

# driver.find_element_by_id('kw').send_keys("小米") #候选方法

driver.find_element_by_xpath("//span[@class='bg s_btn_wr']/input").click()#点击按钮

# driver.find_element_by_xpath("//input[@value='百度一下']").click()#候选方法

# driver.find_element_by_xpath("//span[@class='bg s_btn_wr']/input[type='submit'][value='百度一下']").click()#候选方法,多条件匹配

运行即可,利用调试可看到每一步的运行情况

建议使用xpath来进行匹配元素,因为有的元素没填写id , name有重复的,所以用xpath更为精确

简单xpath的获取方法:

举例说明: 获取百度按钮

如下 可写为driver.find_element_by_xpath("//span[@class='bg s_btn_wr']/input")

// 表示的是不管前面多少级都匹配(包含一级),/ 是只匹配一级 ,@ 符号表示的是取元素的属性后面紧跟的=内容就是这个值

示例所表示的 就是匹配到这一级后的下一路径,也就是 [百度一下] 按钮的句柄, 再对其.click()点击即可

//span[@class='bg s_btn_wr']/input[type='submit'][value='百度一下'] 多条件匹配

python模拟点击网页按钮实现方法

以上就是python模拟点击网页按钮实现方法的详细内容,更多关于python怎么模拟点击网页按钮的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python使用str & repr转换字符串
Oct 13 Python
pip安装python库的方法总结
Aug 02 Python
Django ORM 查询管理器源码解析
Aug 05 Python
pytorch 可视化feature map的示例代码
Aug 20 Python
pandas条件组合筛选和按范围筛选的示例代码
Aug 26 Python
python实现获取单向链表倒数第k个结点的值示例
Oct 24 Python
如何基于python操作excel并获取内容
Dec 24 Python
Django+Celery实现动态配置定时任务的方法示例
May 26 Python
Python中zip函数如何使用
Jun 04 Python
Django QuerySet查询集原理及代码实例
Jun 13 Python
最新版 Windows10上安装Python 3.8.5的步骤详解
Nov 28 Python
Python实现PIL图像处理库绘制国际象棋棋盘
Jul 16 Python
python GUI库图形界面开发之PyQt5动态加载QSS样式文件
Feb 25 #Python
python 计算概率密度、累计分布、逆函数的例子
Feb 25 #Python
python GUI库图形界面开发之PyQt5窗口背景与不规则窗口实例
Feb 25 #Python
python统计函数库scipy.stats的用法解析
Feb 25 #Python
Python Websocket服务端通信的使用示例
Feb 25 #Python
Python GUI库PyQt5样式QSS子控件介绍
Feb 25 #Python
浅谈python累加求和+奇偶数求和_break_continue
Feb 25 #Python
You might like
PHP5.3的垃圾回收机制(动态存储分配方案)深入理解
2012/12/10 PHP
php中设置index.php文件为只读的方法
2013/02/06 PHP
基于php无限分类的深入理解
2013/06/02 PHP
深入PHP与浏览器缓存的分析
2013/06/03 PHP
PHP中soap用法示例【SoapServer服务端与SoapClient客户端编写】
2018/12/25 PHP
解决laravel(5.5)访问public报错的问题
2019/10/12 PHP
THINKPHP5.1 Config的配置与获取详解
2020/06/08 PHP
jQuery学习4 浏览器的事件模型
2010/02/07 Javascript
jQuery学习笔记之jQuery选择器的使用
2010/12/22 Javascript
JavaScript DOM元素尺寸和位置
2015/04/13 Javascript
JQuery中基础过滤选择器用法实例分析
2015/05/18 Javascript
jQuery ui实现动感的圆角渐变网站导航菜单效果代码
2015/08/26 Javascript
Node.js项目中调用JavaScript的EJS模板库的方法
2016/03/11 Javascript
Javascript 5种方法实现过滤删除前后所有空格
2016/06/22 Javascript
AngularJs $parse、$eval和$observe、$watch详解
2016/09/21 Javascript
JavaScript中apply方法的应用技巧小结
2016/09/29 Javascript
vue.js通过自定义指令实现数据拉取更新的实现方法
2016/10/18 Javascript
vue 2.0路由之路由嵌套示例详解
2017/05/08 Javascript
微信小程序使用swiper组件实现类3D轮播图
2018/08/29 Javascript
clipboard在vue中的使用的方法示例
2018/10/19 Javascript
three.js实现炫酷的全景3D重力感应
2018/12/30 Javascript
Vue+element 解决浏览器自动填充记住的账号密码问题
2019/06/11 Javascript
通过原生vue添加滚动加载更多功能
2019/11/21 Javascript
探究一道价值25k的蚂蚁金服异步串行面试题
2020/08/21 Javascript
[50:17]Newbee vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
[02:51]2018年度DOTA2最佳中单位选手-完美盛典
2018/12/17 DOTA
常见的在Python中实现单例模式的三种方法
2015/04/08 Python
Python/ArcPy遍历指定目录中的MDB文件方法
2018/10/27 Python
详解用python计算阶乘的几种方法
2019/08/14 Python
Python属性和内建属性实例解析
2020/01/14 Python
python 爬取马蜂窝景点翻页文字评论的实现
2020/01/20 Python
python实现在线翻译功能
2020/03/03 Python
小学数学教学反思
2014/02/02 职场文书
西柏坡观后感
2015/06/08 职场文书
《正面管教》读后有感:和善而坚定的旅程
2019/12/19 职场文书
vue 实现弹窗关闭后刷新效果
2022/04/08 Vue.js