【问题标题】:PhantomJs CentOS 5.8 unable to render the pagePhantomJs CentOS 5.8 无法呈现页面
【发布时间】:2016-01-04 16:56:46
【问题描述】:

来自我的 Java 应用程序

    private static DesiredCapabilities buildCapabilities() {
        String userAgent = "Mozilla/5.0 (Windows NT 6.0) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.41 Safari/535.1";
        System.setProperty("phantomjs.page.settings.userAgent", userAgent);

        DesiredCapabilities capabilities = DesiredCapabilities.chrome();
        capabilities.setJavascriptEnabled(true);
        capabilities.setCapability("takesScreenshot", true);
        capabilities.setCapability("phantomjs.page.settings.userAgent", userAgent);
        capabilities.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY, PHANTOMJS_EXECUTABLE_PATH_PROPERTY);
        return capabilities;
    }

    PhantomJSDriver mainDriver = new PhantomJSDriver(buildCapabilities());
    mainDriver.manage().window().maximize();

    mainDriver.get("https://www.mycommerce.com/");
    Thread.sleep(20000);

我正在尝试通过 PhantomJS 1.9.8 访问以下页面 http://www.mycommerce.com/

在我的 Windows 10 机器上一切正常,但在 CentOS 5.8 上我只收到以下错误和屏幕:

[INFO  - 2016-01-02T15:31:30.888Z] SessionManagerReqHand - _postNewSessionCommand - New Session Created: 
[ERROR - 2016-01-02T15:31:32.591Z] Session [] - page.onError - msg: ReferenceError: Can't find variable: jQuery
[ERROR - 2016-01-02T15:31:32.591Z] Session ] - page.onError - stack:
  (anonymous function) (https://www.mycommerce.com/:100)
[ERROR - 2016-01-02T15:31:32.602Z] Session [] - page.onError - msg: ReferenceError: Can't find variable: jQuery
[ERROR - 2016-01-02T15:31:32.602Z] Session [- page.onError - stack:
  (anonymous function) (https://www.mycommerce.com/:229)
[ERROR - 2016-01-02T15:31:32.606Z] Session [] - page.onError - msg: ReferenceError: Can't find variable: jQuery
[ERROR - 2016-01-02T15:31:32.606Z] Session [] - page.onError - stack:
  (anonymous function) (https://www.mycommerce.com/:406)
  (anonymous function) (https://www.mycommerce.com/:414)
[ERROR - 2016-01-02T15:31:32.620Z] Session [] - page.onError - msg: ReferenceError: Can't find variable: jQuery
[ERROR - 2016-01-02T15:31:32.620Z] Session [] - page.onError - stack:
  (anonymous function) (https://www.mycommerce.com/:818)
  (anonymous function) (https://www.mycommerce.com/:826)
[ERROR - 2016-01-02T15:31:32.662Z] Session [] - page.onError - msg: ReferenceError: Can't find variable: jQuery
[ERROR - 2016-01-02T15:31:32.663Z] Session [] - page.onError - stack:

如何解决?

【问题讨论】:

    标签: java centos phantomjs


    【解决方案1】:

    @alexanoid,您的浏览器中似乎启用了一些广告拦截器扩展程序,从而禁止页面完全呈现。在我的机器上尝试使用广告拦截器,结果与您在上面附加的图像相同。 因此,您应该禁用广告/扩展并再次尝试运行脚本。 希望这能解决问题。

    【讨论】:

    • 老实说,我不知道如何在没有 X Windows 的 CentOS 5.8 上检测广告拦截器..
    猜你喜欢
    • 2016-02-14
    • 1970-01-01
    • 1970-01-01
    • 2018-09-18
    • 1970-01-01
    • 2014-09-22
    • 2013-06-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多