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中迭代器(iterator)用法实例分析
Apr 29 Python
Python中你应该知道的一些内置函数
Mar 31 Python
关于Python 3中print函数的换行详解
Aug 08 Python
python中的随机函数小结
Jan 27 Python
Python模块WSGI使用详解
Feb 02 Python
python socket网络编程之粘包问题详解
Apr 28 Python
python游戏地图最短路径求解
Jan 16 Python
Python使用get_text()方法从大段html中提取文本的实例
Aug 27 Python
Python 获取命令行参数内容及参数个数的实例
Dec 20 Python
Python实现图片查找轮廓、多边形拟合、最小外接矩形代码
Jul 14 Python
PyTorch 导数应用的使用教程
Aug 31 Python
Django数据模型中on_delete使用详解
Nov 30 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
探讨:parse url解析URL,返回其组成部分
2013/06/14 PHP
解析PHP的session过期设置
2013/06/29 PHP
ThinkPHP中公共函数路径和配置项路径的映射分析
2014/11/22 PHP
替换php字符串中的单引号为双引号的方法
2017/02/16 PHP
PHP排序算法之希尔排序(Shell Sort)实例分析
2018/04/20 PHP
ThinkPHP3.2.3框架Memcache缓存使用方法实例总结
2019/04/15 PHP
Yii Framework框架开发微信公众平台示例
2020/04/26 PHP
JsEasy简介 JsEasy是什么?与下载
2007/03/07 Javascript
被jQuery折腾得半死,揭秘为何jQuery为何在IE/Firefox下均无法使用
2010/01/22 Javascript
jquery+javascript编写国籍控件
2015/02/12 Javascript
firefox浏览器用jquery.uploadify插件上传时报HTTP 302错误
2015/03/01 Javascript
JavaScript使用function定义对象并调用的方法
2015/03/23 Javascript
jquery实现鼠标滑过小图查看大图的方法
2015/07/20 Javascript
基于jquery实现一个滚动的分步注册向导-附源码
2015/08/26 Javascript
AngularJS $injector 依赖注入详解
2016/09/14 Javascript
原生js更改css样式的两种方式
2017/03/15 Javascript
分享5个小技巧让你写出更好的 JavaScript 条件语句
2018/10/20 Javascript
[07:38]2014DOTA2国际邀请赛 Newbee顺利挺进胜者组赛后专访
2014/07/15 DOTA
[54:33]2018DOTA2亚洲邀请赛小组赛 A组加赛 Liquid vs Optic
2018/04/03 DOTA
用Python设计一个经典小游戏
2017/05/15 Python
浅谈Django自定义模板标签template_tags的用处
2017/12/20 Python
[原创]Python入门教程1. 基本运算【四则运算、变量、math模块等】
2018/10/28 Python
Python和Java的语法对比分析语法简洁上python的确完美胜出
2019/05/10 Python
python itchat实现调用微信接口的第三方模块方法
2019/06/11 Python
解决jupyter运行pyqt代码内核重启的问题
2020/04/16 Python
深入了解Python enumerate和zip
2020/07/16 Python
利于python脚本编写可视化nmap和masscan的方法
2020/12/29 Python
美国高级工作服品牌:Carhartt
2018/01/25 全球购物
应届生.NET方向面试题
2015/05/23 面试题
什么是抽象
2015/12/13 面试题
实习自荐信
2013/10/13 职场文书
前厅收银主管岗位职责
2014/02/04 职场文书
实验心得体会
2014/09/05 职场文书
2016年习主席讲话学习心得体会
2016/01/20 职场文书
2019入党申请书格式和范文
2019/06/25 职场文书
Python测试框架pytest高阶用法全面详解
2022/06/01 Python