PhantomJS - PhantomJS

PhantomJS
Phantomjs-logo.png
Түпнұсқа автор (лар)Ария Хидаят
ӘзірлеушілерАрия Хидаят
Бастапқы шығарылым2011 жылғы 17 қаңтар; 9 жыл бұрын (2011-01-17)
Тұрақты шығарылым
2.1.1[1] / 2016 жылғы 24 қаңтар; 4 жыл бұрын (2016-01-24)
Репозиторий Мұны Wikidata-да өзгертіңіз
ЖазылғанC ++
ТүріБасы жоқ шолғыш
ЛицензияBSD[2]
Веб-сайтелестер.org

PhantomJS тоқтатылған болып табылады басы жоқ шолғыш веб-парақтың өзара әрекеттесуін автоматтандыру үшін қолданылады. PhantomJS а JavaScript Автоматтандырылған навигацияны, скриншоттарды, пайдаланушының мінез-құлқы мен мәлімдемелерін қосатын API, оны браузерге негізделген блок сынақтарын орындау үшін қолданылатын жалпы құралға айналдырады. бассыз жүйе сияқты үздіксіз интеграция қоршаған орта. PhantomJS негізделген WebKit оны ұқсас шолушы ортаға айналдыру Сафари және Google Chrome (WebKit-тің Chrome-да ашылғанға дейін) Жыпылықтау ). Бұл ашық бастапқы бағдарламалық жасақтама астында шығарылды BSD лицензиясы.[2]

Тарих

PhantomJS 2011 жылдың 23 қаңтарында Ария Хидаятпен бірнеше жыл дамығаннан кейін шығарылды.[3]

Мемлекеттік жоба бойынша алғашқы міндеттеме 2011 жылы болды.[4]

PhantomJS-ке сілтеме жасау үшін жиі қолданылатын логотип - қара фонда орналасқан флуоресцентті көк елес. Бұл PhantomJS қолданушыларын елестер сияқты етіп көрсететін графикалық интерфейстің немесе шолғыштың негізгі бөлігінің жоқтығына қатысты.

2018 жылдың наурыз айында PhantomJS-ті дамыту белсенді жарналардың болмауына байланысты тоқтатылды.[5]

PhantomJS қолдану

PhantomJS JavaScript API-ді веб-парақтарды ашу, скриншоттар түсіру, пайдаланушы әрекеттерін орындау және енгізілген JavaScript-ті парақ контекстінде іске қосу үшін пайдалануға болады. Мысалы, келесі код Википедияны ашады және жүктеу кезінде скриншотты файлға сақтап, шығады.

консоль.журнал('Веб-парақты жүктеу');var бет = талап ету('веб парақ').жасау();var url = 'http://kk.wikipedia.org/';бет.ашық(url, функциясы (мәртебесі) {  консоль.журнал('Бет жүктелді');  бет.көрсету('wikipedia.org.png');  елес.Шығу();});

PhantomJS қолданатын құралдар

CasperJS

PhantomJS шыққаннан кейін көп ұзамай, Николас Перрио PhantomJS үстіндегі CasperJS кітапханасының жиынтығы, бұл веб-парақты автоматтандырылған тестілеу үшін клиент ретінде өзінің мүмкіндіктерін кеңейтеді. CasperJS және PhantomJS жеткілікті құнды болды, сондықтан ұқсас жобалар API-ны бассыз браузерлермен өзара әрекеттесудің стандартты әдісі ретінде қабылдай бастады.[6][7]

YSlow

Yahoo! нұсқасын әзірледі YSlow PhantomJS-ті веб-сайттар үшін өнімділік көрсеткіштерін жинауға мүмкіндік береді.[8]

PhantomJS пайдаланатын компаниялар

  • Twitter қолданылған QUnit және 2015 жылға арналған тестілеуге арналған PhantomJS.[9]
  • LinkedIn өнімділікті сынау үшін PhantomJS негізделген құралдарды 2011 ж.[10]
  • Netflix PhantomJS-пен жасалған бассыз браузер Sketchy-ді 2014 жылға қарай сайтқа кірмей-ақ не істеп жатқанын түсіну үшін пайдаланды.[11]
  • Time Warner кабелі қолданылған PhantomJS CoffeeScript, Жасмин, және JUnit Үшін XML Дженкинс 2012 жылғы үздіксіз интеграция.[12]

PhantomJS үшін басқа қолданыстар

PhantomJS веб-сайттарды бағдарламалық басқару үшін жасалған және веб-сайттардың визуалды айырмашылығынан көптеген мақсаттарда қолданылған[13] JavaScript фреймворктерін автоматтандырылған тестілеуге.[14]

Клиенттік JavaScript серверін көрсету

Клиенттік JavaScript және SEO практикалық проблемалар, әзірлеушілер PhantomJS-ке алғашқы сұраныстар үшін статикалық HTML-ді алдын-ала ұсынудың әдісі ретінде жүгінді.[15][16] Осындай тәсілдің тиімділігіне қарамастан, ол веб-қосымшаны қайта жазбай, процесті автоматтандыруға тырысатын сервистерді шығармай, SEO жетілдірудің қарапайым әдістерінің бірі болып қала берді.[17]

PhantomJS-ті зиянды мақсатта пайдалану

PhantomJS интерфейссіз, JavaScript арқылы сценариймен және заманауи браузердің сипаттамаларына сай жұмыс істейтін болғандықтан, ол әдетте веб-сайттарға қарсы шабуылдарды автоматтандыру тәсілі ретінде қолданылады.[18] PhantomJS пайдаланушылардың заңды трафигін имитациялайды және шабуылдарды азайту технологияларын қиындатуы мүмкін. PhantomJS-ті әртүрлі веб-сайттардағы кірулерді автоматты түрде тексеру үшін пайдалануға болады[19] (тіркелу деректерін толтыру ), сайт бұзылғаннан кейін және пайдаланушы аты мен парольдер пайда болғаннан кейін туындаған мәселелерді қиындатады.

Сондай-ақ қараңыз

Әдебиеттер тізімі

  1. ^ «Шығарылымдар · ariya / phantomjs». GitHub. Алынған 21 сәуір 2017.
  2. ^ а б «phantomjs / LICENSE.BSD at master · ariya / phantomjs». GitHub.
  3. ^ «ертең түзете алмайтын нәрсені бүгін кодтамаңыз». ariya.blogspot.com. Алынған 20 шілде 2015.
  4. ^ «ariya / phantomjs». GitHub. Алынған 20 шілде 2015.
  5. ^ «Жобаны мұрағаттау: дамуды тоқтату». ariya / phantomjs. Github. 2018-03-03.
  6. ^ Лоран Джуано. «FAQ - SlimerJS». slimerjs.org. Алынған 20 шілде 2015.
  7. ^ «trifleJS». ұсақ-түйек. Алынған 20 шілде 2015.
  8. ^ Марсель Дюран. «YSlow - ресми ашық қайнар жобаның веб-сайты». yslow.org. Алынған 20 шілде 2015.
  9. ^ «Лео Ланез Twitter-де». Twitter. Алынған 20 шілде 2015.
  10. ^ фегаро. «LinkedIn Mobile: біз мұны қалай жасаймыз?». SlideShare. Алынған 20 шілде 2015.
  11. ^ Майкл Мимосо. «Netflix ашық кодты қауіпсіздік құралдары көптеген қиындықтарды шешеді». dangerpost.com. Алынған 20 шілде 2015.
  12. ^ «бассыз жүрген бір жыл». ofilabs.com. Алынған 20 шілде 2015.
  13. ^ «Huddle / PhantomCSS». GitHub. Алынған 20 шілде 2015.
  14. ^ Эйзенберг әсері. «Docs - PhantomJS және Жасминмен тестілеу - Дурандал». durandaljs.com. Алынған 20 шілде 2015.
  15. ^ «HTML, клиенттік және сервер жағын көрсету туралы қысқаша әңгіме». eshlox. Алынған 20 шілде 2015.
  16. ^ Аарон О'Коннелл (22 сәуір 2014). «PhantomJS және Node.js пайдалану арқылы бір бетке арналған қосымшаларды екі жақты көрсету». 42floors.com. Алынған 20 шілде 2015.
  17. ^ «BromBone - сіздің AngularJS, EmberJS немесе BackboneJS веб-сайтыңызға арналған SEO». Brombone.com. Алынған 20 шілде 2015.
  18. ^ «DDoS шабуылына 150 сағаттық қоршауда» басы жоқ «браузерлер қолданылады». Қараңғы оқу. Алынған 20 шілде 2015.
  19. ^ «PhantomJS көмегімен Amazon-ға кіру». GitHub тізімдері. Алынған 20 шілде 2015.

Сыртқы сілтемелер