我正在使用Selenium打开网站的不同页面。已经尝试了多次,但是在最初的GET调用之后,浏览器无法打开第二个网页。在Chrome和Safari上都尝试过。这是我的代码:
driver = webdriver.Chrome()
driver.get("https://www.justdial.com/Chennai/Hr-Consultancy-Services/nct-10258625/page-2")
driver.set_page_load_timeout(30)
driver.get("https://www.justdial.com/Chennai/Hr-Consultancy-Services/nct-10258625/page-3")
这是我第二次致电时遇到的错误:
来自网络日志的信息是错误504,但我已经验证了在浏览器的另一个窗口上完成时,它可以完美地工作,而无需自动化
有关用例的更多信息将有助于构造更规范的答案。但是,我可以使用最小化的代码块访问justdial.com/Chennai/Hr-Consultancy-Services的第2页,如下所示:
代码块:
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument("start-maximized")
driver = webdriver.Chrome(options=options, executable_path=r'C:\WebDrivers\chromedriver.exe')
driver.get("https://www.justdial.com/Chennai/Hr-Consultancy-Services/nct-10258625/page-2")
浏览器快照:
但是,当get()
一个接一个地发送多个时:
driver.get("https://www.justdial.com/Chennai/Hr-Consultancy-Services/nct-10258625/page-2")
driver.get("https://www.justdial.com/Chennai/Hr-Consultancy-Services/nct-10258625/page-3")
似乎ChromeDriver启动的Chrome浏览器被检测到,并显示以下错误:
An error occurred while processing your request.
Reference #97.e5732c31.1612205693.6fd2708
为了避免检测,您需要添加以下选项--disable-blink-features=AutomationControlled
:
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument("start-maximized")
options.add_argument('--disable-blink-features=AutomationControlled')
driver = webdriver.Chrome(options=options, executable_path=r'C:\WebDrivers\chromedriver.exe')
driver.get("https://www.justdial.com/Chennai/Hr-Consultancy-Services/nct-10258625/page-2")
driver.get("https://www.justdial.com/Chennai/Hr-Consultancy-Services/nct-10258625/page-3")
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句