用Python创建网页

2024-09-28 22:14:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在法兰克福Allgemeine Zeitung Archiv网站上拉屎。我需要点击“erweiterte suche”按钮,但我不断得到下面的错误

Message: no such element: Unable to locate element: {"method":"xpath","selector":"//*[@id="g_00271e6200ad4985a0a9c8f9b0032c42"]"}.

我的代码在这里:

import os
import requests
import openpyxl
import smtplib
import time

from selenium import webdriver

driver.get("https://fazarchiv.faz.net")

search_elem = driver.find_element_by_xpath("""//*[@id="searchForm"]/div[1]/input""")
search_elem.click()
search_elem.send_keys('Bürokratie')

erweiterte_suche = driver.find_element_by_xpath("""//*[@id="g_00271e6200ad4985a0a9c8f9b0032c42"]""")
erweiterte_suche.click()

我做错什么了?你知道吗


Tags: importidsearchbydriverelementfindxpath
3条回答

我想,你应该点击“Suche”按钮。灰色的那个。你知道吗

所以你可以搜索“Bürokratie”这个词。你知道吗

您的代码也缺少部分。 比如司机设置。你知道吗

此代码适用于我,您可以使用:

    from selenium import webdriver
    driver = webdriver.Firefox()

    driver.get("https://fazarchiv.faz.net")

    search_elem = driver.find_element_by_xpath("""//*[@id="searchForm"]/div[1]/input""")
    search_elem.click()
    search_elem.send_keys('Bürokratie')

    erweiterte_suche = driver.find_element_by_css_selector("""#searchForm > div.boxRow.clearfix > input""")
    erweiterte_suche.click()

试试这个:

erweiterte_suche = driver.find_element_by_xpath("//div[@class='clearfix']/a[1]")

或者这个:

erweiterte_suche = driver.find_element_by_xpath("//a[text()='erweiterte Suche']")

id是动态的,每次加载站点时都会更改。改用类

erweiterte_suche = driver.find_element_by_xpath('//*[@class="boxExtendedSearch ext-hidden globalArrowRedRight"]')

相关问题 更多 >