Selenium webdriver Webdriver Actionchains-单击下一页';行不通

Selenium webdriver Webdriver Actionchains-单击下一页';行不通,selenium-webdriver,beautifulsoup,selenium-chromedriver,web-crawler,Selenium Webdriver,Beautifulsoup,Selenium Chromedriver,Web Crawler,我是新来的,我试着写一个代码,它应该遍历所有的die 3090页面,并提取表中给出的信息(框b) 但它不起作用。它似乎停留在第一页,它一遍又一遍地提取这些信息 如果你们有谁知道我如何解决它,请帮助我:) 劳拉 导入请求 从bs4导入BeautifulSoup 从selenium导入webdriver 从selenium.webdriver导入操作链 从selenium.webdriver.common.keys导入密钥 导入时间 url=”https://www.dieversicherer.d

我是新来的,我试着写一个代码,它应该遍历所有的die 3090页面,并提取表中给出的信息(框b)

但它不起作用。它似乎停留在第一页,它一遍又一遍地提取这些信息

如果你们有谁知道我如何解决它,请帮助我:)

劳拉

导入请求
从bs4导入BeautifulSoup
从selenium导入webdriver
从selenium.webdriver导入操作链
从selenium.webdriver.common.keys导入密钥
导入时间
url=”https://www.dieversicherer.de/versicherer/auto---reise/typklassenabfrage#orderBy=kh&orderDirection=ASC"
driver=webdriver.Chrome(“/Users/laraschneider/Downloads/chromedriver”)
获取驱动程序(url)
时间。睡眠(5)
html=driver.page\u源
soup=BeautifulSoup(html,“html.parser”)
数字=0
当数量<3090时:
结果\u html=soup.find\u all('div',“ttw-entry\u box-b”)
结果=列表()
对于结果中的结果\u html:
results.append(result.text)
对于t in结果:
打印(t)
时间。睡眠(5)
element=driver。通过xpath(“/html/body/main/div/div[5]/div/div/div/div[2]/div[2]/div[2]/div[2]/button[2]/div”)查找元素
动作=动作链(驱动程序)
动作。将元素移动到元素(元素)
操作。单击(元素)。执行()
数字=数字+1

使用
驱动程序。执行_脚本(“参数[0]。单击();”,元素)
而不是
ActionChains
。以下是完整的代码:

import requests
from bs4 import BeautifulSoup
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

url = "https://www.dieversicherer.de/versicherer/auto---reise/typklassenabfrage#orderBy=kh&orderDirection=ASC"

driver = webdriver.Chrome('/Users/laraschneider/Downloads/chromedriver')
driver.get(url)

time.sleep(5)

html = driver.page_source
soup = BeautifulSoup(html, "html.parser")
number = 0
while number < 3090:
    results_html = soup.find_all('div', "ttw-entry__box-b")

    results = list()

    for result in results_html:
        results.append(result.text)

    for t in results:
        print(t)

    time.sleep(5)

    element = driver.find_element_by_xpath('/html/body/main/div/div[5]/div/div/div/div[2]/div[2]/div[2]/div[2]/button[2]/div')
    driver.execute_script("arguments[0].click();", element)
    number = number+1
导入请求
从bs4导入BeautifulSoup
从selenium导入webdriver
从selenium.webdriver.common.keys导入密钥
导入时间
url=”https://www.dieversicherer.de/versicherer/auto---reise/typklassenabfrage#orderBy=kh&orderDirection=ASC"
driver=webdriver.Chrome(“/Users/laraschneider/Downloads/chromedriver”)
获取驱动程序(url)
时间。睡眠(5)
html=driver.page\u源
soup=BeautifulSoup(html,“html.parser”)
数字=0
当数量<3090时:
结果\u html=soup.find\u all('div',“ttw-entry\u box-b”)
结果=列表()
对于结果中的结果\u html:
results.append(result.text)
对于t in结果:
打印(t)
时间。睡眠(5)
element=driver。通过xpath('/html/body/main/div/div[5]/div/div/div/div[2]/div[2]/div[2]/div[2]/button[2]/div')查找元素
驱动程序。执行_脚本(“参数[0]。单击();”,元素)
数字=数字+1

谢谢,但它仍然不起作用。它仍然从第一页提取表。你还有别的想法吗?
import requests
from bs4 import BeautifulSoup
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

url = "https://www.dieversicherer.de/versicherer/auto---reise/typklassenabfrage#orderBy=kh&orderDirection=ASC"

driver = webdriver.Chrome('/Users/laraschneider/Downloads/chromedriver')
driver.get(url)

time.sleep(5)

html = driver.page_source
soup = BeautifulSoup(html, "html.parser")
number = 0
while number < 3090:
    results_html = soup.find_all('div', "ttw-entry__box-b")

    results = list()

    for result in results_html:
        results.append(result.text)

    for t in results:
        print(t)

    time.sleep(5)

    element = driver.find_element_by_xpath('/html/body/main/div/div[5]/div/div/div/div[2]/div[2]/div[2]/div[2]/button[2]/div')
    driver.execute_script("arguments[0].click();", element)
    number = number+1