鱼C论坛

 找回密码
 立即注册
查看: 1940|回复: 5

[已解决]求大佬帮忙看看为啥会找不到元素

[复制链接]
发表于 2020-10-29 10:59:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import selenium.webdriver
import time
driver=selenium.webdriver.Chrome()
url="https://login.tmall.com/"
driver.get(url)
time.sleep(5)


driver.find_element_by_xpath('//*[@id="fm-login-id"]').send_keys("15116239028")

<input name="fm-login-id" type="text" class="fm-text" id="fm-login-id" tabindex="1" aria-label="会员名/邮箱/手机号" placeholder="会员名/邮箱/手机号" autocapitalize="off">    这个是对应元素的网页代码
麻烦大佬们了!!!



最佳答案
2020-10-29 14:53:00
在F12的Console里面执行JavaScript
document.querySelector('#fm-login-id')
看是不是null
然后切换JavaScript context(f12里面是个下拉选择框 我试了以下 是login.jhtml这个玩意)再执行上面的js 直到不为null
基本可以确定是在这个里面 确定这个就好说了 你再用 driver.switch_to_frame 这个方法去切换想办法进入login.jhtml
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-10-29 14:53:00 | 显示全部楼层    本楼为最佳答案   
在F12的Console里面执行JavaScript
document.querySelector('#fm-login-id')
看是不是null
然后切换JavaScript context(f12里面是个下拉选择框 我试了以下 是login.jhtml这个玩意)再执行上面的js 直到不为null
基本可以确定是在这个里面 确定这个就好说了 你再用 driver.switch_to_frame 这个方法去切换想办法进入login.jhtml
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-29 14:54:16 | 显示全部楼层
说白了就是 这个网页是iframe标签套娃了多个document 你只看到了第一层 其实它在第三层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-29 14:56:05 | 显示全部楼层
然后就是 css选择器比xpath好用多了 JavaScript的document.querySelector方法可以去用css选择器直接定位  而xpath需要浏览器插件吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-10-29 17:10:10 | 显示全部楼层
kogawananari 发表于 2020-10-29 14:56
然后就是 css选择器比xpath好用多了 JavaScript的document.querySelector方法可以去用css选择器直接定位   ...

请问这个东西能用python的方法定位嘛,小白还没学java的相关内容
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-29 20:59:21 | 显示全部楼层
Skilteee 发表于 2020-10-29 17:10
请问这个东西能用python的方法定位嘛,小白还没学java的相关内容

寻找iframe标签进入也可以  还有 前面那个是JavaScript和java不是一个东西
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-18 04:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表