PhantomJS를 설정하고 비디오에 녹화했습니다 : https://www.dailymotion.com/video/xnizmh_1_webcam
빌드 지침 : http://phantomjs.org/build.html
설정에 문제가 있습니까?
설정 후 빠른 시작 자습서를 읽고이 코드를 작성하려고했습니다.
phantomjs hello.js
"명령을 찾을 수 없음"오류가 발생합니다. 이 문제를 어떻게 해결할 수 있습니까?
PhantomJS를 설정하고 비디오에 녹화했습니다 : https://www.dailymotion.com/video/xnizmh_1_webcam
빌드 지침 : http://phantomjs.org/build.html
설정에 문제가 있습니까?
설정 후 빠른 시작 자습서를 읽고이 코드를 작성하려고했습니다.
phantomjs hello.js
"명령을 찾을 수 없음"오류가 발생합니다. 이 문제를 어떻게 해결할 수 있습니까?
답변:
귀두 일의 대답은 저를 올바른 길로 안내했습니다. / usr / bin /에 심볼릭 링크를 하나 더 추가해야했으며 3에 대해 직접 심볼릭 링크를 수행했습니다 (아래 참조).
우분투 서버 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을 얻는다
내가 한 일에 문제가 있으면 알려주세요.
usr/bin
링크를 만들지 않고 전체를 복사하여 붙여 넣지 않아야하는 이유는 /usr/local
무엇입니까?
PhantomJS는 npm에 있습니다. 이 명령을 실행하여 전역으로 설치할 수 있습니다.
npm install -g phantomjs-prebuilt
phantomjs -v
돌아와야한다 2.1.1
1.9.7
반대로 버전 을 제공 합니다 1.4.0
.
npm
하지만 내 답변보기
npm install phantomjs --phantomjs_cdnurl=http://cnpmjs.org/downloads
2.1.1
.
sudo
: 그것은 작동sudo npm install -g phantomjs-prebuilt
phantomjs 웹 사이트에서 사전 빌드 된 패키지 ( http://phantomjs.org/download.html) 를 다운로드 한 다음 터미널을 열고 Downloads 폴더로 이동하십시오.
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
/usr/local/share
이러한 심볼릭 링크를 만들었습니다. 그런 다음 파일 권한이 동일하더라도 작동했습니다. 왜 이것이 비 리눅스 전문가인지 설명 할 수 있습니까?
패키지 관리자에서 설치하십시오.
sudo apt-get install phantomjs
npm install -g phantomjs
.
내가 사용한 빌드 단계는 다음과 같습니다 (이 지침은 버전 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
1.5 이상의 PhantomJS 버전의 경우 다음 사항을 고려하십시오 (phantom 웹 사이트의 빌드 지시 사항 사본).
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
Ubuntu의 경우 PhantomJS 사이트에서 다운로드 할 수있는 사전 빌드 된 버전을 사용할 수 있습니다 .
당신이 당신의 손에 심각한 시간이 있다면 당신은 또한 그것을 직접 만들 수 있습니다 . (이것은 Nikhil의 답변에서 나온 절차입니다).
PhantomJS에있는 사람들은 바이너리를 사용하여 시간을 절약 할 것을 권장합니다.
경고 : 소스에서 PhantomJS를 컴파일하는 데는 오랜 시간이 걸립니다. 주로 WebKit 모듈의 수천 개 파일 때문입니다. 최신 머신에서 4 개의 병렬 컴파일 작업을 수행하면 전체 프로세스에 약 30 분이 소요됩니다. 기성 바이너리 패키지가 제공되는 경우 다운로드하여 설치하는 것이 좋습니다.
현대식 기계를 사용하면 4 코어 이상, 8GB mem 이상이라고 생각합니다. 마이크로 AWS 인스턴스에서 시도하고 2 시간 후에 포기했습니다.
한마디로 : PhantomJS 사이트에서 사전 구축 된 패키지를 지침에 따라 설치하십시오.
내가 선호하는 성격 npm
( Arnel Bucio 답변 참조 )
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 .
npm
설치 sudo apt-get install libfontconfig
후에 만 작동합니다 .
내 방랑자 부트 스트랩에서 :
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 ..
./build.sh
PATH 환경 변수에있는 디렉토리 에 넣는 것을 잊지 않아도됩니다 . 이 예제와 같이 symlink를 통해 수행 할 수 있습니다.
build.sh
입니다. 그 사실을 더 잘 보이게함으로써 당신의 대답을 향상시키고 싶었습니다. 당신이 그것을 원하지 않는다면, 좋아.
나는 이것을했다.
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
설치 안내서의 링크를 참조하십시오 ...
그리고이 명령으로 터미널에서 실행하십시오.
phantomjs --webdriver = 4444
공식 사이트에서 : 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
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
이 명령의 파일 이름을 다운로드 한 파일로 바꾸십시오.
또는 최신-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
단계를 수행해도 작동하지 않지만 다른 빌드에서 복제되었습니다. (ver2.0)
Julio Napurí 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
이것이 내 도커 컨테이너의 / usr / local / bin에 특정 버전의 phantomjs를 배치하는 방법입니다.
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
또는 ./
OS에 따라 다릅니다.
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
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
단점은 다음과 같습니다.
설치 / 업그레이드를 위해 매우 간단한 쉘 스크립트를 사용할 수 있습니다
#!/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
여기 내 우분투 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을 얻는다
이 스레드의 모든 대답을 마친 후에. 우분투에서 phantomjs를 설치하고 실행하는 데 가장 적합한 솔루션이라고 생각합니다.