python selenium刷新页面_python selenium 解决页面刷新后元素找不到问题
1,问题: 当我们第一遍找元素是找到了,而你循环后页面已经新刷新,所以不能用第一遍找出的元素了
即:页面刷新后元素的属性是没变,但是element却变了,所有之前定位的元素element都过期了
2,解决方案
1.针对页面刷新后,之前的元素失效问题,在for循环体里面可以重新定位一次,覆盖掉之前旧的就行了。
2.第一次获取全部元素后,通过len函数获取总个数
3.for循环的时候不要循环定位元素的list对象,换成range函数去循环
3,实例:
错误:
up_list = driver.find_elements_by_xpath("//ul/li/form[contains(@class,'up')]")
for up in up_list:
qa_id = up.get_attribute("action")
qa_id = re.search(r"question/(.*)", qa_id)
qa_id = qa_id.group(1)
if qa_id in qa_id_list:
print(qa_id)
up.find_element_by_xpath("./span//input").click()
time.sleep(2)
正确:
up_list = driver.find_elements_by_xpath("//ul/li/form[contains(@class,'up')]")
for up in range(len(up_list)):
qa_id = up_list[up].get_attribute("action")
qa_id = re.search(r"question/(.*)", qa_id)
qa_id = qa_id.group(1)
if qa_id in qa_id_list:
print(qa_id)
up_list[up].find_element_by_xpath("./span//input").click()
time.sleep(2)
up_list = driver.find_elements_by_xpath("//ul/li/form[contains(@class,'up')]")
python selenium刷新页面_python selenium 解决页面刷新后元素找不到问题相关推荐
- python爬虫动态加载页面_Python+Selenium爬取动态加载页面(2)
注: 上一篇<Python+Selenium爬取动态加载页面(1)>讲了基本地如何获取动态页面的数据,这里再讲一个稍微复杂一点的数据获取全国水雨情网.数据的获取过程跟人手动获取过程类似,所 ...
- python网站打开慢_Python selenium页面加载慢超时的解决方案
开发环境: win10-64 python2.7.16 chrome77 from selenium import webdriver driver = webdriver.Chrome(exec ...
- python自动化控制运动_Python +selenium自动化帮你预订运动场地
导语 炎热的夏天,正是换上短裤短裙晒身材的时候.但是,身材不好怎么办?运动是一个选择,特别是像我们程序员行业,天天坐在空调办公室,更应该出出汗,正所谓:冬练三九,夏练三伏. 下班后,约上公司的妹子,打 ...
- python time智能等待_Python Selenium智能等待
前言 在使用python selenium进行自动化测试实践的过程中,经常会遇到元素定位不到,弹出框定位不到等等各种定位不到的情况,在大多数的情况下,无非是以下两种情况: 1.有frame存在,定位前 ...
- python select模块安装_python+selenium select下拉选择框定位处理方法
一.前言 总结一下python+selenium select下拉选择框定位处理的两种方式,以备后续使用时查询: 二.直接定位(XPath) 使用Firebug找到需要定位到的元素,直接右键复制XPa ...
- python自动化测试工具开发_Python+Selenium自动化测试教程连载(2)
上一期介绍了自动化测试Python+Selenium框架的基本介绍,这期讲元素定位. 元素定位 1.WEB自动化时利器--浏览器自带开发者工具 几乎所有浏览器都自带前端调试工具,也就是我们说的开发者工 ...
- python抓取教学_Python Selenium 实战教学:爬取每日天气
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:气象学渣 一.准备工作 1.Selenium的介绍与安装 Selen ...
- python print 退格_Python+Selenium练习篇之12-组合键-退格键删除文字/鼠标右键
退格键删除文字 前面一篇文章介绍了,常规清除文本输入框字符的方法clear(), 本文介绍 相关脚本代码如下,这里用百度首页搜索输入框举例: #coding=utf-8 importtimefrom ...
- python提取身份证信息_Python selenium 身份证信息在线解析爬取
当做笔记: 身份证地区查询,网络上的查询网站也比较多.现在查询数据库中的身份证,识别其中的信息.主要通过该网站:http://www.gpsspg.com/sfz/ 脚本: #-*- coding: ...
最新文章
- UVA11825 黑客的攻击 Hackers' Crackdown 状压DP,二进制,子集枚举
- Spring Boot的exit code
- linux 启动流详解
- SAP Cloud for Customer Cloud(C4C)Application Studio里的代码调试
- 篡改referer_HTTP_REFERER的用法及伪造
- tensorflow中GPU的设置
- Make GNN Great Again: GNN 上的预训练和自监督学习
- 模板题——快速幂,高斯消元
- MNIST数据集格式ubyte转png
- phpstudy探针文件
- [经验] 【安富莱——DSP教程】第7章 DSP定点数和浮点数(重要)
- WMI服务是什么?Windows 7系统如何禁用WMI服务?
- nested exception is java.lang.NumberFormatException: For input string: “swagger-ui.html“]
- C++的35个技巧阅读笔记(五)
- 【云原生 • Kubernetes】集群资源监控概述、监控平台的搭建
- 关于H5唤起地图导航小结
- 软件众包网站有哪些?
- 基于Python的招聘网站爬虫及可视化的设计与实现
- github生成密钥步骤
- traceroute的工作原理
热门文章
- Android多媒体功能开发(6)——使用MediaPlayer类播放音频
- windows平台使用iperf3
- APP里引用H5页面时,高度设置引起的底部白边等问题
- FCC单晶塑性abaqus-vumat
- 一套简单的ASP.NET教师信息管理系统源码,免费分享
- PWA(渐进式网页应用) + SPA(单页应用)的一个简单的思考
- 一文了解0欧电阻的奥秘:它不是导线,也不是真的0欧
- Docker 从入门到实践系列四 - Docker 容器编排利器 Docker Compose
- Modbus RTU通讯实例:安科瑞电表通讯
- 真就释放双手?C#模拟鼠标操作