Python实现自动化网页操作

编程语言:python
集成开发环境(IDE):Visual Studio Code
配置方法参照Visual Studio Code配置Python编程环境

目录

  • 1 准备
    • 1.1 安装selenium程序包
    • 1.2 引入函数模块
  • 2 实现
    • 2.1 打开网页
    • 2.2 元素定位
    • 2.3 元素控制
    • 2.4 弹出框的处理

1 准备

推荐使用Chrome浏览器

1.1 安装selenium程序包

激活虚拟环境,打开新的Terminal,输入以下代码:

python -m pip install selenium

如下图所示,表示安装成功,版本为4.7.2
安装成功
关闭虚拟环境,打开新的Terminal

1.2 引入函数模块

#引入time模块,实现延时
import time
#引入selenium库中的webdriver模块,实现对网页的操作
from selenium import webdriver
#引入By Class,辅助元素定位
from selenium.webdriver.common.by import By
#引入ActionChains Class,辅助鼠标移动
from selenium.webdriver.common.action_chains import ActionChains

2 实现

2.1 打开网页

#打开谷歌浏览器
driver = webdriver.Chrome() 
#打开网页
driver.get('URL') #将URL替换为需要操作的网址

2.2 元素定位

要想实现对网页的控制,需要首先定位网页上的元素,一般为搜索框、选项、按钮等。

selenium 4.0以上的版本更新了元素定位方式,要用到find_element函数,用法举例如下:

el = driver.find_element(By.NAME, "*")

首先要获取元素的信息:
打开网页后,按F12,打开元素审查窗口
元素审查窗口
点击窗口中红框标出的图标,即可在页面上选择需要定位的元素,查看其代码。
一般需要定位的元素代码都以input开头,下图为搜索框的代码,从代码中可以提取定位元素所需要的信息:
搜索框
根据下列信息均可以定位元素,但要保证根据该信息可以唯一定位到该元素:

By.*
NAMEname=“*”
CLASS_NAMEclass_name=“*”
IDid=“*”
TAG_NAMEtag_name=“*”
LINK_TEXT
PARTIAL_LINK_TEXT
CSS_SELECTOR
XPATHCopy full XPath

如果根据其他信息无法唯一定位该元素,可以采取XPath定位,XPath的获取方式比较特殊,需要右键单击该代码行,在下拉列表中选择Copy full XPath,如下图所示:
Copy full XPath

2.3 元素控制

定位到元素后,可以进行下列操作,实现对元素的控制:

method功能
click()点击
send_keys(‘*’)输入
clear()清空

以输入文字为例,代码如下(*为需要输入的文字):

el.send_keys('*')

如果打开网页时,需要控制的元素不在可视范围内,需要滑动鼠标定位,则要借助于ActionChains,否则可能会报错:找不到该元素。

ActionChains(driver).move_to_element(el).click().perform()
el.click()

上述示例为点击操作,其中第二行最好加上,确保点到该元素
另外一种找不到元素的原因可能是网页还没有加载完毕,此时就可以借助于延时功能:

time.sleep(1)

2.4 弹出框的处理

如果点击按钮后,不是打开一个新的页面,而是弹出了一个窗口,需要在新的窗口中操作,则需要通过如下代码转到新的frame下,否则可能会报错:找不到该元素。

driver.switch_to.frame(0)

随后继续按2.2定位元素即可。

安乐常
关注 关注
  • 23
    点赞
  • 215
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
Python 爬虫模拟登录方法汇总
weixin_34357928的博客
10-29 3284
摘要: 在进行爬虫时,除了常见的不用登录就能爬取的网站,还有一类需要先登录的网站。比如豆瓣、知乎,以及上一篇文章中的桔子网。这一类网站又可以分为:只需输入帐号密码、除了帐号密码还需输入或点击验证码等类型。本文以只需输入账号密码就能登录的桔子网为例,介绍模拟登录常用的 3 种方法。 POST 请求方法:需要在后台获取登录的 URL并填写请求体参数,然后 POST 请求登录,相对麻烦; 添加 Coo...
Phython新手做网页操作自动化
jiangyi_szws的博客
07-19 6206
做一个工具,需要将excel内的内容分别对应填充到网页内的表单文本框和下拉框中
python selenium自动化操作网页示例源码:百度自动搜索
12-22
安装selenium包,安装Chrome浏览器,安装chromedriver Mac下相关安装: pip install selenium 使用selenium打开一个空的浏览器窗口: from selenium import webdriver driver = webdriver.Chrome() 报错’chromedriver’ executable needs to be in PATH 解决方法一:直接下载chromedriver并添加路径 1.下载chromedriver,查看chrome浏览器版本为62 下载地址:http://npm.taobao.org/mirrors/chr
一篇教你python网页自动化
weixin_45870300的博客
05-13 2777
在当今的快速发展的数字时代,自动化技术已成为提高效率、减少重复性工作和优化数据管理过程的关键工具。网页自动化尤其在多个行业中表现出巨大的潜力,包括电子商务、数据分析、市场研究等领域。通过自动化脚本,用户可以模拟网页上的各种操作,如填写表单、抓取数据、自动测试以及定期检查内容更新。Python,作为一种简单易学的编程语言,配合强大的库如Selenium,提供了一个强大的平台用于开发和实现网页自动化任务。
一分钟学会,Python 打开网页的几种方式
最新发布
python茶水实验室
08-12 1665
通过以上几种方式,你可以使用 Python 轻松打开网页或获取网页内容,每种方法都有其特定的应用场景.webbrowser适用于简单的网页访问,subprocess提供了更灵活的浏览器控制,requests则是数据抓取的利器,而selenium则可以应对复杂的自动化浏览器操作.根据实际需求,选择最适合的方式,提升你的开发效率.希望这篇文章能帮助你掌握 Python 打开网页的多种方法,并灵活应用于实际项目中.想了解更多编程精彩知识内容,请关注我的微信公众号:Python小胡子!!
python 实现自动化点击界面方案
热门推荐
LlanyW的专栏
03-07 1万+
https://blog.csdn.net/m0_37602827/article/details/108308991 PC 端自动化测试使用到的 python 模块主要有 pywinauto、win32gui、pyautogui,主要功能如下: pywinauto:主要使用到 Application 类,用于应用程序管理(打开与关闭应用等)、窗口管理(最小化、最大化、关闭窗口) pywin32:包含 win32gui、win32api、win32con 3个子模块,用于窗口管理(定位窗口、显示和.
Python自动化页面操作
他的博客
07-17 6105
一、输入内容:send_keys() #定位输入框 input_box = browser.find_element_by_id('kw') #输入内容 input_box.send_keys('关键字') 二、点击按钮:click() #定位搜索按钮 button = browser.find_element_by_id('su') button.click() 三、清空输入框:clear(...
Python web自动化(⿏标键盘模拟操作)
m0_63475519的博客
05-17 1372
五种常⽤的操作
Python网页自动化(一)
wxkhturfun的博客
12-06 1845
参考链接:https://blog.csdn.net/Haven200/article/details/103208795 1.安装 首先: pip3 install selenium 然后在https://github.com/mozilla/geckodriver/releases/中选择合适的版本,解压后得到一个名为geckodriver的文件,然后执行:mv geckodriver /usr/local/bin/ 2.功能列举 3.示例 #!/usr/bin/env python3 # codin
Python网页相关的操作集锦
andoring的专栏
05-18 6224
<br />1、从网址中获取网页内容<br /> <br />import urllib<br /> import re<br /> import sys<br /> import string<br /><br /> sock = urllib.urlopen("http://www.hao123.com/")<br /> strhtml = sock.read()<br /> strhtml = unicode(strhtml, 'gb2312','ignore').encode('utf-
Python操作网页
会飞的鱼@的博客
09-26 7001
Python实现自动播放网页视频1、环境要求:1)模块要求:**selenium**2)模块安装:3) 驱动下载2、启动浏览器3、启动网站4、经典案例分析1)刷新当前页面:2)获得当前窗口的窗口句柄:3) 最大化窗体4)切换到选择的 iframe5)切换标签页6)屏幕截图5、声明 1、环境要求: python 1)模块要求:selenium import os import time from selenium import webdriver from selenium.webdriver.support
python 实现登录网页操作方法
09-20
今天小编就为大家分享一篇python 实现登录网页操作方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
Python使用Selenium模拟浏览器自动操作功能
12-17
概述 在进行网站爬取数据的时候,会发现很多网站都进行了反爬虫的处理,如JS加密,Ajax加密,反Debug等方法,通过请求获取数据和页面展示的内容完全不同,这时候就用到Selenium技术,来模拟浏览器的操作,然后获取数据。本文以一个简单的小例子,简述Python搭配Tkinter和Selenium进行浏览器的模拟操作,仅供学习分享使用,如有不足之处,还请指正。 什么是Selenium? Selenium是一个用于Web应用程序测试的工具,Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,S
Python实现Web UI自动化测试实战-Chapter-13
12-26
本章将简要介绍如何配置这些工具,实现自动化测试的集成。 8. **测试报告与日志记录**: 为了跟踪测试过程和结果,我们需要生成详细的测试报告和日志。我们将学习如何使用Python的logging模块记录测试过程,以及使用...
Python利用splinter实现浏览器自动化操作方法
09-20
总结来看,Python结合splinter库进行浏览器自动化操作,可以极大地提高测试效率和开发效率,尤其是在Web应用的持续集成测试中,可以快速定位问题、验证功能和用户体验。splinter库的简单易用让自动化测试变得不再是...
学习Python selenium自动化网页抓取器
12-23
### 学习Python Selenium自动化网页抓取器 #### 一、引言 随着互联网技术的发展,数据成为企业和个人的重要资产之一。如何高效地获取网络上的公开数据成为了许多开发者关心的问题。传统的网页抓取方法虽然简单易用...
python+selenium实现网页自动化
Dhaka577的博客
05-19 961
图文中,想定位那个110文本的元素,根本定位不到,因为110是可变的,所以定位它的父节点 ,再通过//定位父节点下的子节点。===================以上4种只利用了元素本身的特征来定位=================================以下2种利用元素之间的层级关系+元素本身的特征共同来定位============//元素标签名[text()=值 and @属性名=值 and @属性名=值]//元素标签名[text()=值 or @属性名=值 or @属性名=值]
python通用UI自动化测试框架源码 2.0
10-26
Python通用UI自动化测试框架源码2.0是一个旨在简化UI自动化测试的工具,适用于各种软件或Web应用的测试。这个框架的核心目标是提高测试效率,降低维护成本,通过抽象元素操作、检查点验证和回退策略,使得测试用例...
Python实现浏览器自动化操作
07-06 1382
最近在研究网站自动登录的问题,涉及到需要实现浏览器自动化操作,网上有不少介绍,例如使用pamie,但是只是支持IE,而且项目也较久没有更新了。还有就是利用selenium,可支持多种浏览器。网上资料比较多。经过比较,我选择了Splinter模块,因为利用Splinter开发浏览器自动化操作,编写代码比较简单。 一、Splinter的安装 Splinter的使用必修依靠Cython、lxml、s
写文章

热门文章

  • Python实现自动化网页操作 15502
  • Visual Studio Code配置Python编程环境 6857

最新评论

  • Python实现自动化网页操作

    2301_77205714: 弹出来窗口,不是打开新页面,按F12 没反应,打不开开发者的那个窗口,请问怎么处理

  • Python实现自动化网页操作

    騰: 谢谢您,我学到了这个知识并且应用起来了,支持了您的创作,2块钱表情包

  • Python实现自动化网页操作

    瑟瑟发抖的我: #引入time模块,实现延时 import time #引入selenium库中的webdriver模块,实现对网页的操作 from selenium import webdriver #引入By Class,辅助元素定位 from selenium.webdriver.common.by import By #引入ActionChains Class,辅助鼠标移动 from selenium.webdriver.common.action_chains import ActionChains 这些是在哪弄得?

  • Python实现自动化网页操作

    2301_77305591: #引入time模块,实现延时 import time #引入selenium库中的webdriver模块,实现对网页的操作 from selenium import webdriver #引入By Class,辅助元素定位 from selenium.webdriver.common.by import By #引入ActionChains Class,辅助鼠标移动 from selenium.webdriver.common.action_chains import ActionChains 这些代码是写在哪啊?

最新文章

  • Visual Studio Code配置Python编程环境
2023年2篇

目录

目录

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家湖州玻璃钢广场雕塑定制泰州玻璃钢人物雕塑批发徐州那里制作玻璃钢雕塑玻璃钢雕塑设计制作报价上海玻璃钢户外雕塑成都景区玻璃钢雕塑定制濮阳玻璃钢景观雕塑制作厂家动物玻璃钢雕塑收费玻璃钢园林雕塑仿真白鹤厦门玻璃钢雕塑多少钱玻璃钢节庆装饰雕塑信阳佛像玻璃钢人物雕塑公司商场美陈座椅跟换理由河北曲阳玻璃钢雕塑定做厂深圳周年庆典商场美陈生产厂家山西玻璃钢仿铜雕塑周年商场美陈哪里买六安玻璃钢雕塑需要多少钱口碑好玻璃钢雕塑厂家畅销全国牡丹江小区玻璃钢雕塑安装南海玻璃钢人物雕塑合肥玻璃钢雕塑定做厂家济南仿铜玻璃钢雕塑定做宿州大型玻璃钢雕塑优势江西上饶玻璃钢雕塑制品厂上海室内商场美陈批发价玻璃钢校园雕塑设计哪里有云南玻璃钢雕塑厂招聘深圳树脂玻璃钢雕塑供应厂家玻璃钢孔子雕塑现货香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化