解决Selenium弹出新页面无法定位元素问题(Unable to locate element)


coding=utf-8 from selenium import webdriver

import time

browser=webdriver.Firefox() browser.get("http://cn.bing.com/")

keywords = 'MrLevo520 CSDN' send_keywords=keywords.decode('utf-8')#中英混输入可防止乱码 browser.find_element_by_id("sb_form_q").send_keys(send_keywords) time.sleep(1) #----------操作一:进行对关键字MrLevo520 CSDN搜索----------------

browser.find_element_by_id("sb_form_go").click()#执行此操作会进行搜索,但是没有弹出新窗口,所以句柄不用重定位 time.sleep(3) #----------操作二:对搜索页面"我的CSDN"进行点击操作--------------

browser.find_element_by_xpath("/html/body/div/ol/li/h2/a").click()#进行当前页面点击第一项 #--------操作三:对新弹出的页面再点击"贡献的资源"选项-----

browser.switch_to_window(browser.window_handles[1]) #或者是下面方法

for handle in browser.window_handles:#方法二,始终获得当前最后的窗口
    browser.switch_to_window(handle)

browser.find_element_by_xpath("/html/body/div[3]/div[2]/div[2]/div/a[3]").click()

time.sleep(5)
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值