python3+selenium百度知道回答问题输入框这个元素定位不到,求方法 解决了肯定高悬赏加采纳?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python3+selenium百度知道回答问题输入框这个元素定位不到,求方法 解决了肯定高悬赏加采纳?相关的知识,希望对你有一定的参考价值。

python3+selenium自动化 百度知道回答问题这个输入框一直定位不到元素,求解??

参考技术A 1、页面中有iframe,定位元素时,需要用switch_to.frame()转换到元素所在的frame上再去定位
2、遇到一种新情况,有些按钮在html上没有被赋予herf链接,而是由javascript控制跳转到新的页面,这种情况下点击按钮之后浏览器上打开一个新页面,但是浏览器的句柄handle仍然会停留在原页面(浏览器显示的句柄在新页面,所以不容易发现这个问题),而不是新弹出的页面上,所以要定位新页面的元素,必须先将句柄转移到新弹出的页面上,再去进行定位,用到如下语句:
#获得浏览器上所有窗口
handles = driver.window_handles
#转换到最新弹出的窗口
driver.switch_to.window(driver.window_handles[len(handles)-1])
跳转需要时间的话,加上time.sleep(2),再试就能定位成功了
转载于:https://www.cnblogs.com/shuchengxiang/p/6558239.html
文章最后发布于: 2017-03-16
原文链接:http://www.cnblogs.com/shuchengxiang/p/6558239.html追问

我是获取不到这个窗口的元素,id、name,xpath都没有,求解答

参考技术B //试试下面代码,不行发代码我调试试试
from selenium.webdriver import Firefox

b = Firefox()
b.get('localhost:8000') # or wherever you are serving this html from
iframe = b.find_element_by_css_selector('iframe')
b.switch_to_frame(iframe)
print b.page_source追问

我已经获取到page_source,下一步怎么获取定位输入框呢

参考技术C 162455145

以上是关于python3+selenium百度知道回答问题输入框这个元素定位不到,求方法 解决了肯定高悬赏加采纳?的主要内容,如果未能解决你的问题,请参考以下文章

python3.6.1+selenium3.0环境安装问题及解决方法

Selenium3 + Python3自动化测试系列七——多窗口切换

使用Selenium爬取百度文库word文章

Selenium+Python3的web自动化测试

python3+selenium3 怎么利用cookie来跳过验证码

Selenium3+python3--如何定位鼠标悬停才显示的元素