该清单有效,但据我所知,还有更多可用的URL,我需要添加什么才能切换到下一页。
例如,我想在第一,第二和第三谷歌页面上获取所有网址?
谢谢你的帮助!

import time
from selenium import webdriver
from selenium.webdriver.firefox.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from bs4 import BeautifulSoup

options = Options()
options.headless = True
driver = webdriver.Firefox(options=options, executable_path = "c:\\...\\geckodriver.exe")
url = "https://www.google.de"
driver.get(url)

actions = webdriver.ActionChains(driver)

time.sleep(4)

element = driver.find_element_by_xpath("//form[@id='tsf']/div[2]/div/div/div/div[2]/input")
element.send_keys('restaurant in hamburg');
element.submit()
time.sleep(2)

driver = webdriver.Firefox(browser_profile=fp)

htmltext = driver.page_source
soup = BeautifulSoup(htmltext, "lxml")
ergebnisse = soup.find_all ("div", class_="rc")

for result in results:
    link = result.find ("a",href=True)
    print (link.get('href'))

driver.quit()

最佳答案

通过硒浏览不同的页面与正常浏览没有什么不同。创建一个变量并将其设置为一个元素,它将带您进入下一页(下一页按钮或“第二页”选项)。然后,您可以使用.click()单击该元素。然后遍历获取网址的部分,并对每个连续的页面重复。

关于python - Python Selenium查找URL并切换到下一页,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59804363/

10-12 16:50