可能是因为selenium自动化爬取时无法触发网站的一些JS事件,导致无法自动同意按钮。您可以尝试加入等待时间或者手动点击同意按钮。例如:

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

browser.get('https://www.booking.cn/hotel/cn/chengdu-tuo-ban-xie-qing-nian-lv-she.zh-cn.html#tab-reviews')

# 等待同意按钮出现并点击
try:
    agree_button = WebDriverWait(browser, 10).until(EC.element_to_be_clickable((By.XPATH, "//button[@id='onetrust-accept-btn-handler']")))
    agree_button.click()
except:
    print("同意按钮未找到或无法点击")

如果仍然不能解决问题,您可以考虑手动获取cookie并添加到selenium浏览器中,以绕过同意按钮的问题

用selenium自动化browsergethttpswwwbookingcnhotelcnchengdu-tuo-ban-xie-qing-nian-lv-shezh-cnhtml#tab-reviews需要点同意按钮才可以进去网站而人工手动搜索网址直接就进去了。这是为什么?怎么办

原文地址: https://www.cveoy.top/t/topic/enam 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录