【selenium】click切换界面等待时间到了直接关闭无响应

【selenium】- click方法从一个界面跳转到另一个界面无响应直接关闭解决方法

1,如果你要跳转的界面,查询xpath链接时候出现href,这时候需要获得元素链接才可以打开
在这里插入图片描述
可以参考这个博主的csdn,讲的很清楚
代码如下:

from selenium import webdriver
# Edge浏览器,你使用哪个浏览器,写哪个浏览器
driver = webdriver.Edge()
#XPATH后面的定位元素需要填写自己的,其他的不用改变
el = driver.find_element(By.XPATH,'/html/body/div[3]/div[1]/div[2]/ul/li[1]/a')
url = el.get_attribute("href");
#上面用的是driver,这里也使用driver
driver.get(url);
time.sleep(2)

2,包没有用对,一般是加这些,可以试一下,我的不是这个问题

from selenium.webdriver import ActionChains
from selenium.webdriver.common.action_chains import ActionChains

3,需要加下拉滑动代码和强制等待,因为你的元素定位可能在界面没有完全显示,或者界面等待时间太短

# 目标元素,使用js语言,写你自己的xpath
ele = driver.find_element('xpath', '/html/body/div[3]/div[1]/div[2]/ul/li[1]/a')
# 向下滚动至目标元素可见
js = "arguments[0].scrollIntoView();"
driver.execute_script(js, ele)
# # 向上滚动至目标元素可见
# js = "arguments[0].scrollIntoView(false);"
# driver.execute_script(js, ele)
time.sleep(5)

4,或者click方法不行就换一种

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
# Edge浏览器
driver = webdriver.Edge()
#click是使用不了的情况下
driver.find_element(By.XPATH,'/html/body/div[3]/div[1]/div[2]/ul/li[1]/a').send_keys(Keys.ENTER)   

5,有的博主说最好一开始将浏览器界面最大化,这里也提供如下代码,

# Edge浏览器
driver = webdriver.Edge()
#将浏览器最大化
driver.maximize_window()
  • 10
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值