linux - كيف يمكنني إعداد وتشغيل PhantomJS على أوبونتو؟



ubuntu installation (17)

لقد قمت بإعداد PhantomJS وقمت بتسجيله على الفيديو: https://www.dailymotion.com/video/xnizmh_1_webcam

بناء التعليمات: http://phantomjs.org/build.html

هل هناك أي خطأ في الإعداد الخاص بي؟

بعد أن قمت بإعداده قرأت البرنامج التعليمي لبدء سريع وحاولت كتابة هذا الرمز

phantomjs hello.js 

يعطيني خطأ "لم يتم العثور على أمر". كيف يمكنني حل هذه المشكلة؟

https://code.i-harness.com


PhantomJS هو في npm . يمكنك تشغيل هذا الأمر لتثبيته عالميًا:

npm install -g phantomjs-prebuilt  

يجب أن تعود phantomjs -v 2.1.1


أعلم أن هذا الأمر قديمًا جدًا ، ولكن فقط في حالة تلقي شخص ما هذا السؤال من Google الآن ، يمكنك تثبيته بكتابة apt-get install phantomjs


إذا كنت ترغب في استخدام phantomjs بسهولة ، يمكنك استخدامه في phantomjscloud.com يمكنك الحصول على النتيجة فقط حسب طلب http.



بالنسبة إلى Ubuntu ، يمكنك استخدام الإصدارات التي تم إنشاؤها مسبقًا والتي يمكن http://phantomjs.org/download.html .

إذا كان لديك بعض الوقت الخطير على يديك ، يمكنك أيضًا http://phantomjs.org/build.html . (هذا هو بالضبط الإجراء من إجابة نيخيل).

أكثر من الرجال في PhantomJS نوصي باستخدام الثنائيات لتوفير الوقت:

تحذير: يستغرق تجميع PhantomJS من المصدر وقتًا طويلاً ، ويرجع ذلك أساسًا إلى آلاف الملفات في وحدة WebKit. مع 4 أعمال تجميع متوازية على جهاز حديث ، تستغرق العملية بالكامل حوالي 30 دقيقة. يوصى بشدة بتنزيل وتثبيت الحزمة الثنائية الجاهزة إذا كانت متوفرة.

مع آلة حديثة فإنها تعني> 4 النوى ،> 8GB م أعتقد. لقد حاولت ذلك على سبيل المثال مايكرو AWS والتخلي عنها بعد 2 ساعة.

باختصار: قم بتثبيت الحزم التي تم إنشاؤها مسبقًا من موقع PhantomJS وفقًا لتعليماتهم.


بالنسبة إلى الإصدار PhantomJS الذي يزيد عن 1.5 ، ضع في اعتبارك ذلك (نسخة حرفيّة من تعليمات البناء على موقع الويب الوهمي):

بالنسبة لنظام التشغيل Ubuntu Linux (تم اختباره على تثبيت حافٍ لأوبونتو 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

خوار الإجراء التثبيت من قبل خوليو نابوري 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 / وإنشاء رابط symlink:

sudo mv $PHANTOM_JS /usr/local/share
sudo ln -sf /usr/local/share/$PHANTOM_JS/bin/phantomjs /usr/local/bin

الآن ، يجب أن يكون PhantomJS بشكل صحيح على النظام الخاص بك.

phantomjs --version

على لينكس لتشغيل hello.js لا تنس أن تضيف مسار hello.js:

phantomjs YourPathToPhantomjsFolder / examples / hello.js


في بلدي bootstrap المتشرد:

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 ..

كن على علم بأن هذه بالتأكيد طريقة واحدة للقيام بذلك:

$ sudo apt-get install phantomjs
$ phantomjs -v
1.6.0

للأسف ، فإنه يثبت 1.6 وليس أحدث واحد ، ولكن هذا يعمل لبلدي أغراض.


لقد وجدت هذه الطريقة أبسط - تبعيات فانتوم + 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

فعله.


لقد وضعني إجابة Guidouil على المسار الصحيح. اضطررت إلى إضافة ارتباط رمزي إضافي إلى / usr / bin / ، وأضفت روابط مباشرة لجميع الروابط الثلاثة - انظر أدناه.

أنا على تثبيت 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

إذا رأى أي شخص أي مشاكل في ما قمت به ، فالرجاء إخباري بذلك.


هذه هي الطريقة التي أضع فيها نسخة محددة من 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

أو مع خارج. ./ اعتمادا على نظام التشغيل.

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 . ما عليك سوى تنزيل واستخراج وإضافة إلى المسار .

هذا له ميزة إضافية تتمثل في سهولة النسخ الاحتياطي إذا كنت معتادًا على النسخ الاحتياطي للمجلد المنزلي بأكمله والذي أوصي به بشدة. هذا يعمل أيضا مع أي نسخة من لينكس.

➤  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

العيوب هي:

  1. ستحتاج إلى الترقية يدويًا
  2. لن يتمكن المستخدمون الآخرون من الوصول إلى هذا.

يمكنك استخدام برنامج نصي بسيط للغاية لتثبيت / الترقية

#!/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

فيما يلي خطوات البناء التي استخدمتها (لاحظ أن هذه الإرشادات للإصدار 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

الآن تثبيت Xvfb

sudo apt-get install xvfb xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic

إطلاق Xvfb:
Xvfb :23 -screen 0 1024x768x24 &

الآن قم بتشغيل الوهمية:
DISPLAY=:23 ./phantomjs hello.js


npm أفضل استخدام npm (انظر إجابة Arnel Bucio )

sudo npm install -g phantomjs

لكن! لقد لاحظت أن بعض وحدات npm لا تزال لا يمكن رؤيتها كملف قابل للتنفيذ على مستوى العالم.

وبالتالي!

  • إنشاء ارتباط جديد /usr/share/phantomjs/ directory

    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 .
    

هنا هو ما فعلته على جهاز أوبونتو 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 في أوبونتو.





phantomjs