无法定位元素问题:使用phantomjs来进行模拟人的计算机行为的时候可能的报错(么牢牢啊)以及自己的问题解决
**
无法定位元素问题
please use headless,Unable to find element with xpath,Unable to find element with frame…使用phantomjs来进行模拟人的计算机行为的时候的报错(么牢牢啊)以及自己的问题解决
**
**
前言:
**
please use headless是pychram针对phantom的,
selenium已经放弃PhantomJS,建议使用火狐或者谷歌无界面浏览器。报错是还偶尔看到了“phantom已死”,一时不知如何是好。。。
#针对 please use headless的方法
#降低selenium的版本
#卸载selenium,重新安装pip install selenium==2.48.0#或者使用别的浏览器,谷歌乱七八糟的报错很多
先是使用了phantomjs,并且使用了pychram来编写,起初以为是pychram不支持版本之类的,就使用了ide测试,因为之前试过是ok的但是仍然不行,查了好多资料,不得解,以下是一些报错和可能的解决方法(我不是这些个问题,所以都没有解决)
1、这个应该是xpath没写对
2、这个则是可能是本质的后面的原因,也可能是需要time.sleep来等待几秒以加载元素
3、这个问题的话,一般不会遇到,差不多都是可以编辑的
4、这个是附带的,因为我想要截图看以下情况,上面直接报错(也就是后面的原因),也就停止了
5、有一个frame定位不到问题,然而也不是很懂,这个frame是另外的一个页面,里面会包含所有的元素,但是有一定缺失及局限性,我这的情况是:
确实要的元素里面也有,但是原html树状块中所要的元素是在frame代码快之上的,并且比frame里的功能齐全,主要需要的属性也只在上面,就。。离谱
原页面我需要找的是一个搜索框,即input
蓝色区域是frame代码块中的,可以看到里面没有input属 性,所以我定位到了frame在这里好像并不适用
以上都是通过phantomjs来查找元素时的报错
然后就是了以下selenium的chorm驱动器创建的浏览器获取,结果获取成功
另外,过程中也有一些问题
比如说通过了send_keys方法已经在搜索框中输入了内容,但是button按钮找不到,也是费了点劲
可以知道那个放大镜的功能元素点击(按钮)属性找不到
后来干脆直接使用模拟的键盘操作----回车
仍然定位这个搜索框,即可
driver.find_element_by_xpath('//input[@id="srch"]').send_keys(Keys.ENTER)
主要的问题解决方法是直接使用各浏览器的驱动来进行元素的筛选,而不是使用phantomjs进行,最后,ide里调试好了,复制进pychram,程序成功运行。。。。
无法定位元素问题:使用phantomjs来进行模拟人的计算机行为的时候可能的报错(么牢牢啊)以及自己的问题解决相关推荐
- [Python从零到壹] 九.网络爬虫之Selenium基础技术万字详解(定位元素、常用方法、键盘鼠标操作)
欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...
- 对比四种爬虫定位元素方法,你更爱哪个?
作者 | 陈熹 来源 | 早起Python 头图 | 下载于视觉中国 在使用Python本爬虫采集数据时,一个很重要的操作就是如何从请求到的网页中提取数据,而正确定位想要的数据又是第一步操作.本文将对 ...
- Selenium如何通过location和size定位元素坐标?
前面我是用过python写过验证形式的,这次利用Selenium如何通过location和size定位元素 识别极验验证码的时候遇到了关于location和size两个属性,由于之前学习python的 ...
- iframe内联元素有白边原因_Selenium无法定位元素的几种解决方案
01frame/iframe表单嵌套 WebDriver只能在一个页面上对元素识别与定位,对于frame/iframe表单内嵌的页面元素无法直接定位. 解决方法: driver.switch_to.f ...
- Selenium之定位元素常用的8种方法整理(第一篇)
在使用selenium webdriver进行元素定位时,通常使用findElement或findElements方法结合By类返回的元素句柄来定位元素.其中By类的常用定位方式共八种,现分别介绍如下 ...
- python android自动化元素定位_linux下Appium+Python移动应用自动化测试实战---3.手把手教你定位元素编写测试用例...
linux下Appium+Python移动应用自动化测试实战-3.手把手教你定位元素编写测试用例 前言 有很多童鞋环境搭建好了却没有进行下一步,是因为缺少step by step的资料. 互联网上ap ...
- 相对定位android,appium相对位置定位元素----父节点/兄弟节点定位
appium相对位置定位元素----父节点/兄弟节点定位 发布时间:2020-06-30 05:51:41 来源:51CTO 阅读:5620 作者:niedongri 讲一下定位手机app上元素时定位 ...
- selenium自学笔记---ecshop购买脚本 xpath定位元素(下拉框,单选框)
本机环境:xamppv3.2.1+ecshop3.0 1.元素定位写对,却一直报错,发现是页面元素加载的太慢,所以加上延时 from selenium import webdriverimport t ...
- CSS一个冒号是伪类:用于监控动作、两个冒号是伪元素::用于定位元素
一个冒号两个冒号::: 一个冒号是伪类,两个冒号是伪元素 伪类有----:first-child ,:link , :vistited,:hover:,active:focus,:lang用于监控 ...
- js下拉 selenium_selenium 难定位元素,时间插件,下拉框定位,string
1.元素定位 ID定位元素: findElement(By.id("")); 通过元素的名称定位元素: findElement(By.name("")); 通过 ...
最新文章
- NBT:宏基因组读云建库+雅典娜算法组装获得微生物高质量基因组
- ubuntu怎么测tcp协议的服务器,Ubuntu利用TCP协议来获取server时间(示例代码)
- centos7 安装git_如何在 CentOS 7 上挂载 Amazon EFS 文件系统?
- IDEA创建Web Project图解
- 一组图诠释CNN及RNN的区别
- Java 里的HashMap(HashTable) 简介.
- G6 图可视化引擎——入门教程——动画
- c++ map是有序还是无序的_go 学习笔记之数组还是切片都没什么不一样
- 蓝桥杯2017年第八届C/C++省赛A组第一题-迷宫
- IP地址查询接口及调用方法
- 用Python爬取QQ空间说说和相册!还不让我访问!
- TWINCAT2安装问题
- 计算机网络故障检测,计算机网络故障处理
- 时间序列的距离度量DTW
- ubuntu 14.04 ADSL 上网失败之解决
- Ubuntu 16.04 笔记本双显卡安装 CUDA9.0
- 同时打开多个独立Excel窗口
- 不能是underfined.xxx
- 计算机网络—数据链路层
- dtree做权限控制
热门文章
- 怎么样才算软件做得好?
- Python吴恩达深度学习作业15 -- YOLO原理及应用(自动驾驶——汽车检测)
- PX Deq Credit: send blkd (3)---Script to monitor parallel queries (文档 ID 45
- android 侧滑栏教程,Android控件开发——DrawerLayout侧滑菜单的实现
- 使用racoon setkey搭建IPsec VPN环境
- 埃夫特机器人回零偏差太大_艰难的差异化竞争,埃夫特前途渺茫
- 【无标题】领料、退料、补料
- 1--request模块
- 技术分享| 如何使用FFmpeg命令处理音视频
- 侧脸生成正脸概论与精析(一)Global and Local Perception GAN