为了账号安全,请及时绑定邮箱和手机立即绑定

网页中自动弹出的对话框要怎么定位呢?

如图,打开这个网站后,自动弹出的登录框,我想定位“账号密码登录”,并点击。代码尝试如下,但是失败了

div = driver.find_element_by_class_name('link').find_element_by_id('switcher_plogin')

div.click()


错误信息如下:

selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"class name","selector":"link"}
 (Session info: chrome=60.0.3112.7)
 (Driver info: chromedriver=2.31.488763 (092de99f48a300323ecf8c2a4e2e7cab51de5ba8),platform=Windows NT 6.3.9600 x86_64)


http://img1.sycdn.imooc.com//599fb5c400010e3007780515.jpg

正在回答

3 回答

这个你需要切换到当前窗口后才能进行定位,switch_TO以后才行

1 回复 有任何疑惑可以回复我~
#1

Verckolf 提问者

我的方法如下,但是还是定位失败了,是方法使用错误了吗? time.sleep(3) driver.switch_to_frame('TopFrame') driver.switch_to_frame('menutree') element = driver.find_element_by_xpath('//*[@id="switcher_plogin"]') element.click()
2017-08-25 回复 有任何疑惑可以回复我~
#2

Verckolf 提问者

哈哈,我找到方法可以定位到了,3Q。 大佬能推荐一些selenium基于python的书么?
2017-08-25 回复 有任何疑惑可以回复我~

楼主后来解决的方法能说一下么

0 回复 有任何疑惑可以回复我~

楼主怎么解决的

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

网页中自动弹出的对话框要怎么定位呢?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信