PhantomJS 无法正确加载网页
PhantomJS not loading webpages properly
下面使用 RSelenium(来自 CRAN 的 1.4.5)和 PhantomJs(1.9.8)获取网站截图的 R 代码在 Mac OS 和 Ubuntu 14 上运行良好AWS。但是当 运行 on Digital Ocean Ubuntu 14 droplet 时,网页似乎无法正确加载。检查此网页 url - fantasy.premierleague.com/a/leagues/standings/1/classic 来自 DigitalOcean and AWS 的屏幕截图。我使用 RStudio view/save 图像。
library(RSelenium)
pJS <- phantom()
browser = remoteDriver(browserName = "phantomJS")
browser$open()
url <- 'https://fantasy.premierleague.com/a/leagues/standings/1/classic'
browser$navigate(url)
browser$screenshot(display = TRUE)
pJS$stop()
我在 Ubuntu 上安装了 PhantomJS 和 RSelenium,如下所示:
#Install/Update system software
sudo apt-get update
sudo apt-get install build-essential chrpath libssl-dev libxft-dev
#Install packages dependencies
sudo apt-get install libfreetype6 libfreetype6-dev
sudo apt-get install libfontconfig1 libfontconfig1-dev
#Download PhantomJS
cd ~
export PHANTOM_JS="phantomjs-2.1.1-linux-x86_64"
wget https://bitbucket.org/ariya/phantomjs/downloads/$PHANTOM_JS.tar.bz2
sudo tar xvjf $PHANTOM_JS.tar.bz2
#Move PhantomJS to /usr/local/share/ and create a symlink:
sudo mv $PHANTOM_JS /usr/local/share
sudo ln -sf /usr/local/share/$PHANTOM_JS/bin/phantomjs /usr/local/bin
#Install pre-requisites for RSelenium
sudo apt-get install r-cran-xml
sudo apt-get install r-cran-RCurl
这可能是什么问题? DigitalOcean 上是否有针对此问题的解决方法?
我在 ubuntu 16.04 上看到同样的问题,但在 windows 上没有。
我还在 ubuntu 16.04 上看到以下输出:
> browser$navigate(url)
[ERROR - 2016-10-31T13:04:20.726Z] Session [89254650-9f6a-11e6-b112-2f925adde426] - page.onError - msg: ReferenceError: Can't find variable: $
phantomjs://platform/console++.js:263 in error
[ERROR - 2016-10-31T13:04:20.726Z] Session [89254650-9f6a-11e6-b112-2f925adde426] - page.onError - stack:
global code (https://fantasy.premierleague.com/a/leagues/standings/1/classic:5988)
phantomjs://platform/console++.js:263 in error
谷歌搜索错误似乎是 phantomjs/ghostdriver 的当前问题。 phantomjs/ghostdriver 有一个新版本
希望很快降落。我发现忽略 SSL 错误对我有用:
library(RSelenium)
pJS <- phantom(extras = "--ignore-ssl-errors=true")
browser = remoteDriver(browserName = "phantom")
browser$open()
url <- 'https://fantasy.premierleague.com/a/leagues/standings/1/classic'
browser$navigate(url)
browser$screenshot(display = TRUE)
pJS$stop()
下面使用 RSelenium(来自 CRAN 的 1.4.5)和 PhantomJs(1.9.8)获取网站截图的 R 代码在 Mac OS 和 Ubuntu 14 上运行良好AWS。但是当 运行 on Digital Ocean Ubuntu 14 droplet 时,网页似乎无法正确加载。检查此网页 url - fantasy.premierleague.com/a/leagues/standings/1/classic 来自 DigitalOcean and AWS 的屏幕截图。我使用 RStudio view/save 图像。
library(RSelenium)
pJS <- phantom()
browser = remoteDriver(browserName = "phantomJS")
browser$open()
url <- 'https://fantasy.premierleague.com/a/leagues/standings/1/classic'
browser$navigate(url)
browser$screenshot(display = TRUE)
pJS$stop()
我在 Ubuntu 上安装了 PhantomJS 和 RSelenium,如下所示:
#Install/Update system software
sudo apt-get update
sudo apt-get install build-essential chrpath libssl-dev libxft-dev
#Install packages dependencies
sudo apt-get install libfreetype6 libfreetype6-dev
sudo apt-get install libfontconfig1 libfontconfig1-dev
#Download PhantomJS
cd ~
export PHANTOM_JS="phantomjs-2.1.1-linux-x86_64"
wget https://bitbucket.org/ariya/phantomjs/downloads/$PHANTOM_JS.tar.bz2
sudo tar xvjf $PHANTOM_JS.tar.bz2
#Move PhantomJS to /usr/local/share/ and create a symlink:
sudo mv $PHANTOM_JS /usr/local/share
sudo ln -sf /usr/local/share/$PHANTOM_JS/bin/phantomjs /usr/local/bin
#Install pre-requisites for RSelenium
sudo apt-get install r-cran-xml
sudo apt-get install r-cran-RCurl
这可能是什么问题? DigitalOcean 上是否有针对此问题的解决方法?
我在 ubuntu 16.04 上看到同样的问题,但在 windows 上没有。
我还在 ubuntu 16.04 上看到以下输出:
> browser$navigate(url)
[ERROR - 2016-10-31T13:04:20.726Z] Session [89254650-9f6a-11e6-b112-2f925adde426] - page.onError - msg: ReferenceError: Can't find variable: $
phantomjs://platform/console++.js:263 in error
[ERROR - 2016-10-31T13:04:20.726Z] Session [89254650-9f6a-11e6-b112-2f925adde426] - page.onError - stack:
global code (https://fantasy.premierleague.com/a/leagues/standings/1/classic:5988)
phantomjs://platform/console++.js:263 in error
谷歌搜索错误似乎是 phantomjs/ghostdriver 的当前问题。 phantomjs/ghostdriver 有一个新版本 希望很快降落。我发现忽略 SSL 错误对我有用:
library(RSelenium)
pJS <- phantom(extras = "--ignore-ssl-errors=true")
browser = remoteDriver(browserName = "phantom")
browser$open()
url <- 'https://fantasy.premierleague.com/a/leagues/standings/1/classic'
browser$navigate(url)
browser$screenshot(display = TRUE)
pJS$stop()