【问题标题】:Chrome is stuck in mobile version while running headless mode in Selenium Python在 Selenium Python 中运行无头模式时,Chrome 卡在移动版本中
【发布时间】:2020-09-12 14:22:18
【问题描述】:

大家好,我正在使用 Selenium 和 Python 运行一些爬虫脚本,我想在无头模式下运行 Chrome,所以我将无头选项设置为 true,如下所示

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

options = Options()
options.headless = True
options.add_argument("--start-maximized")
options.add_argument("--window-size=1920,1080")
options.add_argument("--disable-gpu")
options.add_argument("--no-sandbox")

driver = webdriver.Chrome('chromedriver.exe', options=options)

但在运行脚本时,Chrome 会返回移动版本的网页(我已截取屏幕截图以检查错误)。因此,我的脚本无法正常运行

我尝试了很多方法将其改回桌面网站,添加了“--window-size=1920,1080”、“--start-maximized”等参数。然后设置browser.maximize_window() 和@ 987654323@。我也尝试了不同的 chromedriver 版本,但它根本不起作用

谁能帮帮我?非常感谢。

【问题讨论】:

    标签: python selenium google-chrome web-crawler


    【解决方案1】:

    是的,我有一个非常相似的问题。您需要做的第一件事是手动识别您的用户代理,查看this site。例如,您的用户代理可能是一个长字符串,描述在 macOS 上运行的 Safari 浏览器,该浏览器使用 WebKit 引擎呈现网页。

    现在继续添加一个选项来手动设置您的用户代理

    options.add_argument("user-agent=User-Agent: your user agent string here")
    

    一个示例可能如下所示:

    options.add_argument("user-agent=User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/507.06 Safari/507.06")
    

    【讨论】:

    • 立即解决问题。非常感谢!
    猜你喜欢
    • 2021-09-19
    • 1970-01-01
    • 2023-01-22
    • 2021-07-11
    • 2018-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多