Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 请输入搜索查询,然后等待_Python_Selenium_Web Scraping - Fatal编程技术网

Python 请输入搜索查询,然后等待

Python 请输入搜索查询,然后等待,python,selenium,web-scraping,Python,Selenium,Web Scraping,我将如何实现这一点?我正在尝试将密钥发送到我拥有的搜索框,然后在执行之后。我希望它等待搜索结果加载,然后获取源。硒可以吗 试图找到一种比时间更好的方法。睡眠(2)可能类似于驱动程序。等待页面加载() 我希望它等到搜索结果加载 您正在寻找的是一个WebDriverWait(也称为“显式等待”) 您希望选择一个表示结果已加载的特定元素并等待加载。假设您正在等待一个元素的出现,该元素可以通过mySearchResults的id定位。代码如下所示 actions = ActionChains(drive

我将如何实现这一点?我正在尝试将密钥发送到我拥有的搜索框,然后在执行之后。我希望它等待搜索结果加载,然后获取源。硒可以吗

试图找到一种比时间更好的方法。睡眠(2)可能类似于
驱动程序。等待页面加载()

我希望它等到搜索结果加载

您正在寻找的是一个
WebDriverWait
(也称为“显式等待”)

您希望选择一个表示结果已加载的特定元素并等待加载。假设您正在等待一个元素的出现,该元素可以通过
mySearchResults
id
定位。代码如下所示

actions = ActionChains(driver)
actions.send_keys(search_query + Keys.ENTER)
actions.perform()
# code to wait until page loads
src = driver.page_source

谢谢这正是我所需要的:)
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

# create driver and execute search here

# now wait for the presence of the `mySearchResults` element.
# if it is not found within 10 secs, a `TimeOutException` is raised.
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "mySearchResults")))