You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Selenium和Python自动化时AirCanada页面加载失败求助

加拿大航空页面Selenium加载卡住的解决办法

核心原因:网站反爬机制识别自动化工具

加拿大航空的页面会检测浏览器的自动化特征(比如Selenium默认的标识),直接用默认配置的ChromeDriver会被拦截,导致页面加载停滞。以下是针对性的解决步骤:

1. 配置ChromeOptions隐藏自动化痕迹

修改代码,添加配置模拟真实浏览器环境:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import os
import time

SAMPLE_URL = "https://www.aircanada.com/aeroplan/redeem/availability/outbound?org0=YTO&dest0=LGA&departureDate0=2023-11-01&lang=en-CA&tripType=O&ADT=1&YTH=0&CHD=0&INF=0&INS=0&marketCode=TNB"

os.environ['PATH'] += r";C:/SeleniumDrivers/chromedriver-win64/"

# 配置Chrome选项
chrome_options = Options()
# 禁用自动化检测特征
chrome_options.add_argument("--disable-blink-features=AutomationControlled")
# 添加真实User-Agent(可从你自己的浏览器复制)
chrome_options.add_argument("user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36")
# 最大化窗口模拟真实操作
chrome_options.add_argument("--start-maximized")
# 禁用沙箱模式(部分环境需要)
chrome_options.add_argument("--no-sandbox")

driver = webdriver.Chrome(options=chrome_options)
# 移除navigator.webdriver标识
driver.execute_script("Object.defineProperty(navigator, 'webdriver', {get: () => undefined})")

driver.get(SAMPLE_URL)
# 用显式等待替代固定sleep(更可靠)
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

try:
    # 等待页面核心元素加载(可根据实际调整元素定位)
    WebDriverWait(driver, 30).until(
        EC.presence_of_element_located((By.TAG_NAME, "body"))
    )
finally:
    time.sleep(5)
    driver.quit()

2. 处理Cookie授权弹窗

页面加载后若出现Cookie同意弹窗,需先点击同意,否则页面可能无法继续加载。在driver.get(SAMPLE_URL)后添加:

try:
    # 定位并点击Cookie同意按钮(需根据页面实际元素调整选择器)
    accept_btn = WebDriverWait(driver, 10).until(
        EC.element_to_be_clickable((By.ID, "onetrust-accept-btn-handler"))
    )
    accept_btn.click()
except:
    # 无弹窗则跳过
    pass

3. 控制请求频率

短时间内频繁请求会触发反爬限制,建议每次请求后添加合理等待时间,避免连续刷新页面。

内容的提问来源于stack exchange,提问作者Chris

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 15:10:06