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的web框架编写MVC配置来使其运行的教程
Apr 30 Python
Python模拟简单电梯调度算法示例
Aug 20 Python
几行Python代码爬取3000+上市公司的信息
Jan 24 Python
详解Numpy数组转置的三种方法T、transpose、swapaxes
May 27 Python
python爬虫增加访问量的方法
Aug 22 Python
浅谈PyQt5中异步刷新UI和Python多线程总结
Dec 13 Python
python GUI库图形界面开发之PyQt5浏览器控件QWebEngineView详细使用方法
Feb 26 Python
Python猴子补丁Monkey Patch用法实例解析
Mar 23 Python
PyInstaller将Python文件打包为exe后如何反编译(破解源码)以及防止反编译
Apr 15 Python
Python如何获取文件指定行的内容
May 27 Python
Python生成器next方法和send方法区别详解
May 30 Python
OpenCV Python实现图像指定区域裁剪
Mar 12 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
关于mysql 字段的那个点为是定界符
2007/01/15 PHP
php跨站攻击实例分析
2014/10/28 PHP
ThinkPHP自定义Redis处理SESSION的实现方法
2016/05/16 PHP
php 使用 __call实现重载功能示例
2019/11/18 PHP
深入理解JavaScript系列(2) 揭秘命名函数表达式
2012/01/15 Javascript
jquery插件开发方法(初学者)
2012/02/03 Javascript
jQuery源码中的chunker 正则过滤符分析
2012/07/31 Javascript
jquery设置按钮停顿3秒不可用
2014/03/07 Javascript
Jquery实现点击按钮,连续地向textarea中添加值的实例代码
2014/03/08 Javascript
Bootstrap每天必学之表格
2015/11/23 Javascript
Bootstrap每天必学之轮播(Carousel)插件
2016/04/25 Javascript
AngularJs Javascript MVC 框架
2016/06/20 Javascript
详解Angularjs在控制器(controller.js)中使用过滤器($filter)格式化日期/时间实例
2017/02/17 Javascript
Bootstrap 响应式实用工具实例详解
2017/03/29 Javascript
Vue实现动态添加或者删除对象和对象数组的操作方法
2018/09/21 Javascript
Nodejs对postgresql基本操作的封装方法
2019/02/20 NodeJs
es6 symbol的实现方法示例
2019/04/02 Javascript
React中阻止事件冒泡的问题详析
2019/04/12 Javascript
详解基于原生JS验证表单组件xy-form
2019/08/20 Javascript
微信小程序实现拖拽功能
2019/09/26 Javascript
如何利用node转发请求详解
2020/09/17 Javascript
nuxt 服务器渲染动态设置 title和seo关键字的操作
2020/11/05 Javascript
[01:05:56]2018DOTA2亚洲邀请赛3月29日 小组赛A组 Newbee VS VG
2018/03/30 DOTA
Python中getattr函数和hasattr函数作用详解
2016/06/14 Python
实践Vim配置python开发环境
2018/07/02 Python
CSS3的一个简单导航栏实现
2015/08/03 HTML / CSS
印度最大的酒店品牌网络:OYO Rooms
2016/07/24 全球购物
香港化妆品经销商:我的公主
2016/08/05 全球购物
jurlique茱莉蔻英国官网:澳洲天然护肤品
2018/08/03 全球购物
绿色环保标语
2014/06/12 职场文书
住房抵押登记委托书
2014/09/27 职场文书
领导班子群众路线与四风问题对照检查材料思想汇报
2014/10/11 职场文书
给学校的建议书400字
2015/09/14 职场文书
如何在CocosCreator里画个炫酷的雷达图
2021/04/16 Javascript
MySQL中in和exists区别详解
2021/06/03 MySQL
shell进度条追踪指令执行时间的场景分析
2022/06/16 Servers