scr*_*per 2 python selenium web-scraping selenium-chromedriver selenium-webdriver
在社区查找信息后,我在帖子中看到下一个代码直到几天前才起作用:
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument("window-size=1920,1080")
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('useAutomationExtension', False)
browser=webdriver.Chrome(options=options,executable_path=r"chromedriver.exe")
browser.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
"source": """
Object.defineProperty(navigator, 'webdriver', {
get: () => undefined
})
"""
})
browser.execute_cdp_cmd('Network.setUserAgentOverride',
{"userAgent": 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4240.198 Safari/537.36'})
browser.get('https://www.bet365.com')
Run Code Online (Sandbox Code Playgroud)
之后,下一个解决方案是:用 Notepad ++ 打开文件 chromedriver.exe 并搜索并将“cdc_”替换为“xyz_”并保存文件。并将此行添加到 chromedriver 的选项中: options.add_argument('--disable-blink-features=AutomationControlled')
我不知道为什么这对我不起作用。我正在使用 Chrome 88.0.4324.146 和 chromedriver 版本 88.0.4324.96,并执行以下代码:
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument("window-size=1920,1080")
options.add_argument('--disable-blink-features=AutomationControlled')
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('useAutomationExtension', False)
options.add_argument('--disable-blink-features=AutomationControlled')
browser=webdriver.Chrome(options=options,executable_path=r"chromedriver.exe")
browser.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
"source": """
Object.defineProperty(navigator, 'webdriver', {
get: () => undefined
})
"""
})
browser.execute_cdp_cmd('Network.setUserAgentOverride',
{"userAgent": 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4240.198 Safari/537.36'})
browser.get('https://www.bet365.com')
Run Code Online (Sandbox Code Playgroud)
但执行后页面会卡住加载直至崩溃。
import subprocess
#other imports
subprocess.Popen(
'"C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe" --remote-debugging-port=9222', shell=True)
options = webdriver.ChromeOptions()
options.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
driver = webdriver.Chrome(options=options)
driver.maximize_window()
driver.get('https://www.bet365.com')
Run Code Online (Sandbox Code Playgroud)
注意:运行此脚本之前请确保关闭所有 chrome 浏览器
| 归档时间: |
|
| 查看次数: |
6129 次 |
| 最近记录: |