Bab*_*abu 4 java https web-scraping phantomjs selenium-webdriver
我正在使用Selenium和PhantomJs来刮取URL.我将驱动程序初始化如下
final DesiredCapabilities caps = DesiredCapabilities.chrome();
caps.setCapability(
PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY,
"PhantomJsPath");
caps.setCapability("page.settings.loadImages", false);
caps.setCapability("trustAllSSLCertificates", true);
RemoteWebDriver driver = new PhantomJSDriver(caps);
driver.setLogLevel(Level.OFF);
driver.get("https://.......")
Run Code Online (Sandbox Code Playgroud)
从驱动程序获取的页面源是空的
我错过了什么吗?
最近,POODLE漏洞迫使网站删除SSLv3支持.由于PhantomJS <v1.9.8默认使用SSLv3,因此无法加载页面.要解决此问题,您需要使用--ssl-protocol=tlsv1或运行PhantomJS --ssl-protocol=any.请参阅此答案以获取简单的PhantomJS.
caps = DesiredCapabilities.phantomjs(); // or new DesiredCapabilities();
caps.setCapability(PhantomJSDriverService.PHANTOMJS_CLI_ARGS,
new String[] {"--ssl-protocol=tlsv1"});
// other capabilities
driver = new PhantomJSDriver(caps);
Run Code Online (Sandbox Code Playgroud)
如果这不能解决问题,您也可以添加
"--web-security=false", "--ignore-ssl-errors=true"
Run Code Online (Sandbox Code Playgroud)
为看到SiKing的回答CLI args来String数组这里.
| 归档时间: |
|
| 查看次数: |
3052 次 |
| 最近记录: |