如何使用 Selenium 预加载此页面?
How can I preload this page with Selenium?
如何在下面视频中显示的页面上预加载所有信息?该页面仅加载前 20 个应用程序,当您滚动时,它会在您到达底部时再加载 20 个,因此 20、40、60 等。有没有办法使用 selenium 预加载所有应用程序?该页面使用它自己的滚动条而不是浏览器。
https://www.youtube.com/watch?v=WTVyNoQvdJs
使用此代码解决
actions = ActionChains(driver)
body = driver.find_element_by_class_name('selected_box')
body.click()
while True:
try:
driver.find_element_by_xpath('//*[@id="interview_list"]/div[4]/p/strong')
break
except:
actions.send_keys(Keys.PAGE_DOWN)
actions.perform()
这可以通过几种不同的方式完成。在这个例子中,我将使用键函数 selenium 库中的向下翻页命令:
from selenium.webdriver.common.keys import Keys
body = driver.find_element_by_xpath('/html/body')
body.send_keys(Keys.PAGE_DOWN)
只需将其放入 for 循环中进行特定次数的尝试,或将其嵌入 while 循环中,直到找到所需的 XPATH。
使用 for 循环的示例
body = driver.find_element_by_xpath('/html/body')
for i in range(X):
body.send_keys(Keys.PAGE_DOWN)
使用 while True 循环的示例
body = driver.find_element_by_xpath('/html/body')
while True:
try:
driver.find_element_by_xpath("DESIRED_XPATH")
break
except:
body.send_keys(Keys.PAGE_DOWN)
如何在下面视频中显示的页面上预加载所有信息?该页面仅加载前 20 个应用程序,当您滚动时,它会在您到达底部时再加载 20 个,因此 20、40、60 等。有没有办法使用 selenium 预加载所有应用程序?该页面使用它自己的滚动条而不是浏览器。
https://www.youtube.com/watch?v=WTVyNoQvdJs
使用此代码解决
actions = ActionChains(driver)
body = driver.find_element_by_class_name('selected_box')
body.click()
while True:
try:
driver.find_element_by_xpath('//*[@id="interview_list"]/div[4]/p/strong')
break
except:
actions.send_keys(Keys.PAGE_DOWN)
actions.perform()
这可以通过几种不同的方式完成。在这个例子中,我将使用键函数 selenium 库中的向下翻页命令:
from selenium.webdriver.common.keys import Keys
body = driver.find_element_by_xpath('/html/body')
body.send_keys(Keys.PAGE_DOWN)
只需将其放入 for 循环中进行特定次数的尝试,或将其嵌入 while 循环中,直到找到所需的 XPATH。
使用 for 循环的示例
body = driver.find_element_by_xpath('/html/body')
for i in range(X):
body.send_keys(Keys.PAGE_DOWN)
使用 while True 循环的示例
body = driver.find_element_by_xpath('/html/body')
while True:
try:
driver.find_element_by_xpath("DESIRED_XPATH")
break
except:
body.send_keys(Keys.PAGE_DOWN)