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 相关文章推荐
使用cx_freeze把python打包exe示例
Jan 24 Python
win8下python3.4安装和环境配置图文教程
Jul 31 Python
python 不同方式读取文件速度不同的实例
Nov 09 Python
pandas每次多Sheet写入文件的方法
Dec 10 Python
对Python3 * 和 ** 运算符详解
Feb 16 Python
PyQt 实现使窗口中的元素跟随窗口大小的变化而变化
Jun 18 Python
python与C、C++混编的四种方式(小结)
Jul 15 Python
Python3查找列表中重复元素的个数的3种方法详解
Feb 13 Python
pycharm 激活码及使用方式的详细教程
May 12 Python
使用anaconda安装pytorch的实现步骤
Sep 03 Python
利用Python过滤相似文本的简单方法示例
Feb 03 Python
Python中np.random.randint()参数详解及用法实例
Sep 23 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
Yii2组件之多图上传插件FileInput的详细使用教程
2016/06/20 PHP
PHP实现微信模拟登陆并给用户发送消息的方法【文字,图片,图文】
2017/06/29 PHP
JS 事件绑定函数代码
2010/04/28 Javascript
jQuery实现视频作为全屏幕背景
2014/12/18 Javascript
js时间戳转为日期格式的方法
2015/12/28 Javascript
Javascript将JSON日期格式化
2016/08/23 Javascript
使用JavaScript获取URL中的参数(两种方法)
2016/11/16 Javascript
JS封装通过className获取元素的函数示例
2016/12/20 Javascript
基于jQuery实现照片墙自动播放特效
2017/01/12 Javascript
angular2 组件之间通过service互相传递的实例
2018/09/30 Javascript
实例讲解JavaScript截取字符串
2018/11/30 Javascript
解决layui 三级联动下拉框更新时回显的问题
2019/09/03 Javascript
记录vue做微信自定义分享的一些问题
2019/09/12 Javascript
nodeJS与MySQL实现分页数据以及倒序数据
2020/06/05 NodeJs
vue+ElementUI 关闭对话框清空验证,清除form表单的操作
2020/08/06 Javascript
python网页请求urllib2模块简单封装代码
2014/02/07 Python
pandas将numpy数组写入到csv的实例
2018/07/04 Python
详解Python中的各种转义符\n\r\t
2019/07/10 Python
Python reshape的用法及多个二维数组合并为三维数组的实例
2020/02/07 Python
Python基于Faker假数据构造库
2020/11/30 Python
浅谈three.js中的needsUpdate的应用
2012/11/12 HTML / CSS
HTML5之SVG 2D入门10—滤镜的定义及使用
2013/01/30 HTML / CSS
HTML5 FileReader对象的具体使用方法
2020/05/22 HTML / CSS
澳大利亚和新西兰最大的在线旅行社之一:Aunt Betty
2019/08/07 全球购物
英国领先的在线高尔夫商店:Scottsdale Golf
2019/08/26 全球购物
地球鞋加拿大官网:Earth Shoes Canada
2020/11/17 全球购物
群众路线教育实践活动方案
2014/02/02 职场文书
道德模范事迹材料
2014/12/20 职场文书
地震慰问信
2015/02/14 职场文书
公积金具结保证书
2015/05/11 职场文书
保护地球的宣传语
2015/07/13 职场文书
2019年健身俱乐部的创业计划书
2019/08/26 职场文书
Java Optional<Foo>转换成List<Bar>的实例方法
2021/06/20 Java/Android
Ajax实现异步加载数据
2021/11/17 Javascript
面试中canvas绘制图片模糊图片问题处理
2022/03/13 Javascript
Python中itertools库的四个函数介绍
2022/04/06 Python