Java PhantomJS NETWORK_ERR XMLHttpRequest 异常 101

标签 java selenium

我正在尝试获取页面 https://secure.twitch.tv/login在 Java 中使用 Selenium 的 PhantomJS,但是在 driver.get(...) 上我总是因为这个错误而崩溃。我尝试过实现这个:

String [] phantomJsArgs = {"--web-security=no", "--ignore-ssl-errors=yes"};
desireCaps.setCapability(PhantomJSDriverService.PHANTOMJS_GHOSTDRIVER_CLI_ARGS, phantomJsArgs);

但这似乎没有什么区别。有谁知道解决方法吗?

这是一些代码:

private void setup(){
        DesiredCapabilities desireCaps = new DesiredCapabilities();
        desireCaps.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY, "C:\\Users\\Scott\\workspace\\Twitch Bot v2\\libs\\phantomjs.exe");
        desireCaps.setCapability("takesScreenshot", true);
        String [] phantomJsArgs = {"--disable-web-security"};
        desireCaps.setCapability(PhantomJSDriverService.PHANTOMJS_GHOSTDRIVER_CLI_ARGS, phantomJsArgs);
        driver = new PhantomJSDriver(desireCaps); 
        //driver = new HtmlUnitDriver();
    }

这是当我尝试抓取抽搐页面时控制台打印出来的内容。

This is what the console prints out when I try to get the twitch link.

最佳答案

您似乎正在尝试使用异步 XMLHttpRequest 加载页面,但服务器在其响应中未提供跨源 header (Access-Control-Allow-Origin)。出于安全原因,不鼓励使用异步 XMLHttpRequest 加载此类资源。

要绕过此限制,请将标志 --disable-web-security 添加到 phantomJsArgs。

关于Java PhantomJS NETWORK_ERR XMLHttpRequest 异常 101,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30492608/

相关文章:

java - 停止 Swing 定时器直到用户点击

java - 垃圾回收实现

c# - 通过回滚 NUnit、Sql Server 和 UI 测试中的事务来维护数据库已知状态的正确方法

selenium - Specflow-GenerateFeatureFileCodeBehindTask意外失败

testing - 如何在 Selenium IDE 中创建跨域测试?

java - 将 Webdriver 作为实例传递

java - 在 solr 的类路径中找不到资源 'solrconfig.xml'

java - 如何通过 eclipse 调试外部 .jar 文件?

java - 以编程方式添加 edittext iD

node.js - 带 Protractor 的 Sauce Labs,URI 格式错误