我正在使用selenium并尝试将驱动程序更改为它打开的新页面(同一选项卡) driver.switch\至似乎不起作用,因为我认为它是用来当一个新的窗口打开 driver.current\u网址也似乎不起作用,因为它给了我上一页的网址,我似乎无法找出如何获得当前网页的网址
代码如下:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver.get("https://www.youtube.com")
searchBar = driver.find_element_by_name("search_query")
searchBar.send_keys("unbox therapy")
searchBar.send_keys(Keys.ENTER)
print(driver.current_url)
它仍然返回https://www.youtube.com 我需要的搜索查询应该像 https://www.youtube.com/results?search_query=unbox+therapy
就像Tek Nath说的,你可以增加等待时间,但是你也可以这样做。你知道吗
您应该在之前添加一些等待时间
driver.current_url
因为完全加载站点需要一些时间。而负载时间也取决于网络连接速度等因素。对我来说,没有等待的时间。你知道吗@TekNath的回答是正确的,近乎完美。不过,我建议您在代码中避免使用
time.sleep(5)
,如下所示:您可以在How to sleep webdriver in python for milliseconds中找到详细的讨论
作为一种替代方法,您可以为
title_contains()
诱导WebDriverWait,并且可以使用以下Locator Strategy:代码块:
控制台输出:
相关问题 更多 >
编程相关推荐