我遇到了一个能够自动化(网站(单击此处((的问题
看来该网站在某种程度上受到了chromedriver的保护。当我正常访问网站时,我没有问题,但当selenium尝试自动化网站时,url会重定向到其他主页。
这是我的示例代码:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time
chrome_options = Options()
#chrome_options.add_argument("--headless")
EXE_PATH = 'chromedriver.exe'
driver = webdriver.Chrome(executable_path=EXE_PATH)#, options=chrome_options)
driver.get(SEE URL ABOVE)
time.sleep(5)
print(driver.current_url)
driver.quit()
请使用超链接文本中的链接。我在这里把它从代码中删除了。
想知道是否有人在网站上发现浏览器是用硒自动化的时遇到过类似的问题,以及是否有任何可能的方法来解决这个问题。如果没有,也许你有一个建议,可以从另一个角度分享。
更多关于您的用例以及您为什么觉得。。。该网站受到保护会帮助我们进一步分析这个问题。然而,通过Selenium访问网站,您可以使用以下解决方案:
-
代码块:
from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC options = webdriver.ChromeOptions() options.add_argument("start-maximized") #options.add_argument("--headless") options.add_experimental_option("excludeSwitches", ["enable-automation"]) options.add_experimental_option('useAutomationExtension', False) driver = webdriver.Chrome(options=options, executable_path=r'C:UtilityBrowserDriverschromedriver.exe') driver.get("https://publicindex.sccourts.org/horry/publicindex/") WebDriverWait(driver, 10).until(EC.title_contains("Index")) print(driver.current_url) driver.quit()
-
控制台输出:
https://publicindex.sccourts.org/horry/publicindex/
Outro
你可以在中找到一些相关的讨论
- 通过ChromeDriver启动的Chrome浏览器被检测到
- 硒和无头浏览器不断要求Captcha