我设置了PhantomJS并将其录制到视频:https://www.dailymotion.com/video/xnizmh_1_webcam
构建说明:http://phantomjs.org/build.html
我的设置有什么问题吗?
在我设置之后,我阅读quick start tutorial并尝试编写此代码
phantomjs hello.js
它给我“命令未找到”错误。我该如何解决这个问题?
答案 0 :(得分:357)
Guidouil的回答让我走上正轨。我不得不在/ usr / bin /中添加一个符号链接,我为所有3个添加了符号链接 - 见下文。
我正在Ubuntu服务器Natty Narwhal上安装。
这正是我所做的。
cd /usr/local/share
sudo wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.7-linux-x86_64.tar.bz2
sudo tar xjf phantomjs-1.9.7-linux-x86_64.tar.bz2
sudo ln -s /usr/local/share/phantomjs-1.9.7-linux-x86_64/bin/phantomjs /usr/local/share/phantomjs
sudo ln -s /usr/local/share/phantomjs-1.9.7-linux-x86_64/bin/phantomjs /usr/local/bin/phantomjs
sudo ln -s /usr/local/share/phantomjs-1.9.7-linux-x86_64/bin/phantomjs /usr/bin/phantomjs
最后当我做的时候
phantomjs -v
我得到1.9.7
如果有人发现我所做的任何问题,请告诉我。
答案 1 :(得分:109)
答案 2 :(得分:57)
从phantomjs网站下载预建包: http://phantomjs.org/download.html 然后打开终端并转到下载文件夹
sudo mv phantomjs-1.8.1-linux-x86_64.tar.bz2 /usr/local/share/.
cd /usr/local/share/
sudo tar xjf phantomjs-1.8.1-linux-x86_64.tar.bz2
sudo ln -s /usr/local/share/phantomjs-1.8.1-linux-x86_64 /usr/local/share/phantomjs
sudo ln -s /usr/local/share/phantomjs/bin/phantomjs /usr/local/bin/phantomjs
然后检查安装phantomjs -v
应该返回1.8.1
答案 3 :(得分:38)
从包管理器安装:
sudo apt-get install phantomjs
答案 4 :(得分:14)
以下是我使用的构建步骤(请注意这些说明适用于1.3版。有关最新PhantomJS的安装说明,请参阅本答案的评论):
sudo apt-get update
sudo apt-get install git-core
sudo apt-get install build-essential
sudo apt-get install libqt4-dev libqtwebkit-dev qt4-qmake
git clone git://github.com/ariya/phantomjs.git && cd phantomjs
git checkout 1.3
qmake-qt4 && make
sudo apt-get install xvfb xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic
启动Xvfb:
Xvfb :23 -screen 0 1024x768x24 &
现在运行幻像:
DISPLAY=:23 ./phantomjs hello.js
答案 5 :(得分:12)
对于1.5以上的PhantomJS版本,请考虑这一点(幻像网站上的构建说明的逐字副本):
对于Ubuntu Linux(在Ubuntu 10.04 Lucid的准系统安装上测试 Lynx和Ubuntu 11.04 Natty Narwhal):
sudo apt-get install build-essential chrpath git-core libssl-dev libfontconfig1-dev git clone git://github.com/ariya/phantomjs.git cd phantomjs git checkout 1.7 ./build.sh
答案 6 :(得分:7)
对于Ubuntu,您可以使用预建版本downloadable from the PhantomJS site。
如果你手上有一些重要的时间,你也可以build it yourself。 (这正是Nikhil回答的程序)。
PhantomJS的人建议使用二进制文件来节省时间:
警告:从源代码编译PhantomJS需要很长时间,主要是因为WebKit模块中有数千个文件。在现代机器上进行4个并行编译作业,整个过程大约需要30分钟。强烈建议下载并安装现成的二进制包(如果可用)。
使用现代机器,他们的意思是&gt; <4核,>我认为8gb内存。我在一个微型AWS实例上尝试过,并在2小时后放弃了。
简而言之:按照说明从PhantomJS网站安装预建包。
答案 7 :(得分:4)
在我的流浪汉引导中:
apt-get install -y build-essential chrpath git-core libssl-dev libfontconfig1-dev
git clone git://github.com/ariya/phantomjs.git
cd phantomjs
git checkout 1.9
echo y | ./build.sh
ln -s /home/vagrant/phantomjs/bin/phantomjs /usr/local/bin/phantomjs
cd ..
答案 8 :(得分:4)
Personaly我更喜欢使用npm
(请参阅Arnel Bucio answer)
sudo npm install -g phantomjs
但!我注意到一些npm
模块仍然无法将其视为全局可执行文件。
所以!
创建新的/usr/share/phantomjs/
目录链接
cd /usr/share
sudo ln -s ../lib/node_modules/phantomjs/lib/phantom phantomjs
删除旧/usr/bin/phantomjs
可执行链接并创建新链接
cd /usr/bin
sudo mv phantomjs phantomjs.old
sudo ln -s ../share/phantomjs .
答案 9 :(得分:2)
我已经完成了这件事。
sudo apt-get update
sudo apt-get install build-essential chrpath git-core libssl-dev libfontconfig1-dev
git clone git://github.com/ariya/phantomjs.git
cd phantomjs
git checkout 1.9
./build.sh
答案 10 :(得分:2)
答案 11 :(得分:1)
对于Ubuntu,请从http://phantomjs.org/download.html下载合适的文件。 CD到下载的文件夹。然后:
sudo tar xvf phantomjs-1.9.0-linux-x86_64.tar.bz2
sudo mv phantomjs-1.9.0-linux-x86_64 /usr/local/share/phantomjs
sudo ln -s /usr/local/share/phantomjs/bin/phantomjs /usr/bin/phantomjs
确保将这些命令中的文件名替换为您下载的文件。
答案 12 :(得分:1)
来自官方网站:phantomjs site
sudo apt-get install build-essential chrpath git-core libssl-dev libfontconfig1-dev
git clone git://github.com/ariya/phantomjs.git
cd phantomjs
git checkout 1.8
./build.sh
答案 13 :(得分:1)
请注意,这绝对是一种方法:
$ sudo apt-get install phantomjs
$ phantomjs -v
1.6.0
可悲的是,它安装了1.6而不是最新版本,但这适用于我的目的。
答案 14 :(得分:1)
我知道这个太旧了,但是,我知道现在有人从谷歌那里得到这个问题,你可以通过输入apt-get install phantomjs安装它
答案 15 :(得分:0)
这就是我做的 在我的ubuntu 16.04机器上
sudo apt-get update
sudo wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2
sudo mv path/where/you/downloaded/phantomjs /usr/bin
最后我做的时候
phantomjs -v
我得到 2.1.1
经过这个帖子的每个答案。我认为这是在ubuntu中安装和运行phantomjs的最佳解决方案。
答案 16 :(得分:0)
您可以在没有sudo
或npm
的情况下启动并投放。只需下载,解压缩,然后添加到路径。
如果您习惯备份我强烈建议的整个主文件夹,这还有轻松备份的附加优势。这也适用于任何版本的Linux。
➤ cd ~
➤ wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2
➤ mkdir phantomjs
➤ tar xjf phantomjs-2.1.1-linux-x86_64.tar.bz2 -C phantomjs
➤ echo 'export PATH="$PATH:$HOME/phantomjs/bin"' >> .profile
➤ source .profile
➤ phantomjs -v
2.1.1
缺点是:
您可以使用非常简单的shell脚本进行安装/升级
#!/bin/sh
# install_phantomjs.sh $VERSION
$VERSION = $1
printf "Downloading PhantomJS $VERSION...\n"
wget "https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-$VERSION-linux-x86_64.tar.bz2"
printf "Extracting PhantomJS $VERSION to ~/phantomjs...\n"
mkdir ~/phantomjs
tar xjf phantomjs-$VERSION-linux-x86_64.tar.bz2 -C ~/phantomjs
printf "Done! Make sure $HOME/phantomjs/bin is in your path.\n"
或者在Dockerfile中
# Download and setup PhantomJS
ENV PHANTOMJS_VERSION 2.1.1
RUN curl -fSL "https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-$PHANTOMJS_VERSION-linux-x86_64.tar.bz2" -o /tmp/phantomjs.tar.bz2 && \
mkdir ~/phantomjs && \
tar xjf /tmp/phantomjs.tar.bz2 -C ~/phantomjs && \
rm /tmp/phantomjs.tar.bz2
ENV PATH /home/$USERNAME/phantomjs/bin:$PATH
答案 17 :(得分:0)
这就是我在我的docker容器上将特定版本的phantomjs放在/ usr / local / bin中的方法。
curl -Ls https://github.com/Medium/phantomjs/releases/download/v1.9.19/phantomjs-1.9.8-linux-x86_64.tar.bz2 \
| tar jxvf - --strip-components=2 -C /usr/local/bin/ ./phantomjs-1.9.8-linux-x86_64/bin/phantomjs
或out ./
取决于操作系统。
curl -Ls https://github.com/Medium/phantomjs/releases/download/v1.9.19/phantomjs-1.9.8-linux-x86_64.tar.bz2 \
| tar jxvf - --strip-components=2 -C /usr/local/bin/ phantomjs-1.9.8-linux-x86_64/bin/phantomjs
答案 18 :(得分:0)
在Ubuntu for Windows上,我发现apt-get
和npm
版本都不适用于我。有效的是来自this comment的脚本。
为了便于使用,我将整个内容粘贴到名为install_phantomjs.sh
的脚本文件中,使其可执行(chmod u+x install_phantomjs.sh
),然后运行它(./install_phantomjs.sh
)
答案 19 :(得分:0)
如果您想轻松使用phantomjs,可以在phantomjscloud.com上使用它 您可以通过http请求获得结果。
答案 20 :(得分:0)
在linux上运行hello.js不要忘记添加hello.js的路径:
phantomjs YourPathToPhantomjsFolder / examples / hello.js
答案 21 :(得分:0)
我发现这种更简单的方式 - 幻影依赖+ Npm
sudo apt-get update
sudo apt-get install build-essential chrpath libssl-dev libxft-dev
sudo apt-get install libfreetype6 libfreetype6-dev
sudo apt-get install libfontconfig1 libfontconfig1-dev
和npm
[sudo] npm install -g phantomjs
完成。
答案 22 :(得分:0)
通过JulioNapuríhttps://gist.github.com/julionc
了解安装程序版本:1.9.8
平台:x86_64
首先,安装或更新最新的系统软件。
sudo apt-get update
sudo apt-get install build-essential chrpath libssl-dev libxft-dev
安装PhantomJS所需的这些软件包才能正常工作。
sudo apt-get install libfreetype6 libfreetype6-dev
sudo apt-get install libfontconfig1 libfontconfig1-dev
从PhantomJS网站获取。
cd ~
export PHANTOM_JS="phantomjs-1.9.8-linux-x86_64"
wget https://bitbucket.org/ariya/phantomjs/downloads/$PHANTOM_JS.tar.bz2
sudo tar xvjf $PHANTOM_JS.tar.bz2
下载后,将Phantomjs文件夹移至/ usr / local / share /并创建符号链接:
sudo mv $PHANTOM_JS /usr/local/share
sudo ln -sf /usr/local/share/$PHANTOM_JS/bin/phantomjs /usr/local/bin
现在,它应该在您的系统上正确使用PhantomJS。
phantomjs --version
答案 23 :(得分:0)
或最新的 - 32位版Linux
sudo wget http://phantomjs.googlecode.com/files/phantomjs-1.9.2-linux-i686.tar.bz2
sudo ln -s /usr/local/share/phantomjs-1.9.2-linux-i686/bin/phantomjs /usr/local/share/phantomjs
sudo ln -s /usr/local/share/phantomjs-1.9.2-linux-i686/bin/phantomjs /usr/local/bin/phantomjs
sudo ln -s /usr/local/share/phantomjs-1.9.2-linux-i686/bin/phantomjs /usr/bin/phantomjs