gpt4 book ai didi

javascript - 使用 Selenium 自动结帐过程时出现 403

转载 作者:行者123 更新时间:2023-12-03 21:41:55 24 4
gpt4 key购买 nike

我正在尝试使用 python 和 selenium 创建一个脚本来自动化 bestbuy.ca 的结帐过程。
我一直到最后阶段,您点击查看最终订单,但是当我尝试点击进入最后一步时,收到以下 403 禁止消息(如网络响应中所示)。
是否有服务器端检测到我正在使用 Selenium 并阻止我继续?
我怎样才能隐藏它正在使用 Selenium 的事实?
这些是我用于 selenium 的选项:

options = Options()
options.add_argument('--disable-blink-features=AutomationControlled')
options.add_argument("start-maximized")
options.add_argument("--disable-extensions")
driver = webdriver.Chrome(options=options)
我目前在每个操作后有 10 秒的延迟(即打开页面,等待,单击添加到购物车,等待,单击结帐,等待)
我已经实现了一个随机用户代理,每次运行都要使用:
import fake_useragent
ua = UserAgent()
userAgent = ua.random
options.add_argument(f'user-agent={userAgent}')
我还根据 THIS THREAD 中的评论修改了我的 chromedriver 二进制文件。
进入订单审核页面时出现错误:
Error seen when proceeding to order review page

最佳答案

经过最近几天的大量测试,这里有一些选项可以让我绕过我所面临的限制。

  • Modified cdc_ string in my chromedriver
  • Chrome 驱动程序选项:
     options.add_argument('--disable-blink-features=AutomationControlled')
    options.add_argument("--disable-extensions")
    options.add_experimental_option('useAutomationExtension', False)
    options.add_experimental_option("excludeSwitches", ["enable-automation"])
    chrome_driver = webdriver.Chrome(options=options)
  • 将 webdriver 的 navigator 属性值更改为 undefined:
  • chrome_driver.execute_script("Object.defineProperty(navigator, 'webdriver', {get: () => undefined})")
    在所有这三个都实现之后,我在浏览网站和购物车/结帐过程时不再遇到任何 403 错误。

    关于javascript - 使用 Selenium 自动结帐过程时出现 403,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66989755/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com