Chrome 卡在移动版本中,而 运行 Selenium 中的无头模式 Python

Chrome is stuck in mobile version while running headless mode in Selenium Python

大家好,我正在 运行使用 Selenium 和 Python 编写一些爬虫脚本,我想 运行 Chrome 处于无头模式,所以我设置了无头模式选项为真如下

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 return 移动版本的网络(我已经截屏以检查错误)。因此,我的脚本无法 运行 正确

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

有人可以帮我吗?非常感谢。

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

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

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")