如何模拟或设置Selenium chrome无头的插件长度?我正在关注此guide
我无法通过Chrome选项找到任何相关信息。
我想要这个的原因是我希望尽可能无法检测到无头的镀铬。
尝试以下方法。插件长度仍然是一个问题。
from selenium.webdriver.chrome.options import Options
from selenium import webdriver
options = Options()
options.add_argument("--headless");
user_agent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3240.0 Safari/537.36'
options.add_argument(f'user-agent={user_agent}')
options.add_argument("--lang=en-US,en");
driver = webdriver.Chrome(chrome_options=options)
driver.get('https://intoli.com/blog/making-chrome-headless-undetectable/chrome-headless-test.html')
driver.save_screenshot("screenshot5.png")
driver.close()
如下所示,插件长度仍然可以检测到。
这可能还是仅限于硒蟒?
答案 0 :(得分:0)
driver.execute_cdp_cmd('Page.addScriptToEvaluateOnNewDocument', {
"source": "
Object.defineProperty(navigator, 'plugins', {
get: () => [1, 2, 3, 4, 5]
});
"})
这是 plugins.length 的解决方案
author 在帖子中提到的解决方案。 我确认它运行良好。