Browser senza testa e scraping - soluzioni [chiuso]


368

Sto cercando di mettere un elenco di possibili soluzioni per tute di test automatici del browser e piattaforme browser senza testa in grado di raschiare.


TEST / ROTTAMAZIONE DEL BROWSER:

  • Selenio - fiore all'occhiello di poliglotta nell'automazione del browser, collegamenti per Python, Ruby, JavaScript, C #, Haskell e altro, IDE per Firefox (come estensione) per una distribuzione più rapida dei test. Può fungere da server e ha tonnellate di funzionalità.

JAVASCRIPT

  • PhantomJS - JavaScript , test senza testa con acquisizione e automazione dello schermo, utilizza Webkit . A partire dalla versione 1.8 l'API WebDriver di Selenium è implementata, quindi è possibile utilizzare qualsiasi associazione WebDriver e i test saranno compatibili con Selenium
  • SlimerJS - simile a PhantomJS, utilizza Gecko (Firefox) invece di WebKit
  • CasperJS - JavaScript , basato su PhantomJS e SlimerJS, ha funzionalità extra
  • Ghost Driver - Implementazione JavaScript del WebDriver Wire Protocol per PhantomJS .
  • nuovo PhantomCSS - test di regressione CSS. A CasperJS Module per automatizzare test di regressione visivo con PhantomJS e Resemble.js .
  • nuovo WebdriverCSS - plugin per Webdriver.io per automatizzare i test di regressione visiva
  • nuovo PhantomFlow - Descrive e visualizza i flussi dell'utente attraverso i test. Un approccio sperimentale al test dell'interfaccia utente Web.
  • new trifleJS - porta l'API PhantomJS per usare il motore di Internet Explorer.
  • nuovo IDE CasperJS (commerciale)

Node.js

  • Node-phantom - colma il divario tra PhantomJS e node.js
  • WebDriverJs : attacchi Selenium WebDriver per node.js del team Selenium
  • WD.js - modulo nodo per WebDriver / Selenium 2
  • yiewd - wrapper WD.js che utilizza gli ultimi generatori Harmony! Sbarazzati della piramide del callback con resa
  • ZombieJs - Test full-stack follemente veloci, senza testa, usando node.js
  • NightwatchJs - Soluzione di test basata su nodo JS che utilizza Selenium Webdriver
  • Chimera - Chimera: può fare tutto ciò che fa phantomJS, ma in un ambiente JS completo
  • Dalek.js - Test automatizzati tra browser con JavaScript tramite Selenium Webdriver
  • Webdriver.io - migliore implementazione dei collegamenti WebDriver con 50+ azioni predefinite
  • Nightmare - Electron bridge con un'API di alto livello.
  • jsdom : personalizzato per il raschiatura del web. Un DOM molto leggero implementato in Node.js, supporta pagine con javascript.
  • nuovo Puppeteer : libreria di nodi che fornisce un'API di alto livello per controllare Chrome o Chromium. Il burattinaio funziona senza testa per impostazione predefinita.

SCRAPING / MINING DEL WEB

  • Scrapy - Python , principalmente un raschietto / minatore - veloce, ben documentato e, può essere collegato con Django Dynamic Scraper per piacevoli implementazioni di mining, o Scrapy Cloud per distribuzione PaaS (senza server), funziona in un terminale o un processo autonomo del server , può essere utilizzato con sedano , costruito sopra a Twisted
  • Snailer : modulo node.js , non ancora testato.
  • Node-Crawler - modulo node.js , non ancora testato.

STRUMENTI ONLINE


LINK E RISORSE CORRELATI

Domande:

  • Qualche soluzione pura da Node.js o modulo da Nodejs a PhanthomJS / CasperJS che funziona davvero ed è documentata?

Risposta: Chimera sembra andare in quella direzione, controlla Chimera

  • Altre soluzioni in grado di facilitare l'iniezione JavaScript rispetto al selenio?

  • Conosci qualche soluzione di rubino puro ?

Risposta: controlla l'elenco creato da rjk con soluzioni basate su ruby

  • Conosci qualche tecnologia o soluzione correlata?

Sentiti libero di modificare questa domanda e di aggiungere contenuti come desideri! Grazie per il tuo contributo!


1
non so se è quello che vuoi, ma mi piace quel modulo per la scansione delle pagine web, l'ispezione della dom e così via: npmjs.org/package/crawler . usa jsdom e puoi jQuery come motore di selezione. anche questo (che usa il crawler) sembra interessante: npmjs.org/package/snailer
hereandnow78

Ho avuto molto successo con il modulo node-phantom. È piuttosto semplice e abbastanza ben documentato. Supporta l'iniezione javascript.
Josh C.,

1
Sono sicuro che sei consapevole che GhostDriver è un'implementazione di Selenium-Webdriver che utilizza phantomJS
Robbie Wareham,

2
Potrebbe anche esserti
todd

1
Per scraping e confronti visivi: PhantomCSS e PhantomFlow
FelipeAls

Risposte:


35

Se Ruby fa per te, puoi anche provare:

inoltre, la gemma Nokogiri può essere utilizzata per raschiare:

c'è un libro dedicato su come utilizzare il nokogiri per raschiarlo con la pubblicazione packt


watir è mille volte più semplice delle librerie sopra.
Pavan Katepalli,

Per python la libreria "webbot" offre funzionalità avanzate per una facile automazione del web.
Natesh Bhat,

11

http://triflejs.org/ è come phantomjs ma basato su IE


Sebbene questo collegamento possa rispondere alla domanda, è meglio includere qui le parti essenziali della risposta e fornire il collegamento come riferimento. Le risposte di solo collegamento possono diventare non valide se la pagina collegata cambia.
Sathish,

5
Suona normalmente bene, eppure questa domanda è essa stessa una raccolta di risorse. Un collegamento con una breve descrizione da incorporare nell'elenco si adatta al formato e ha senso.
Federico Galassi,

7

Una specie di selenio basato su JS è Dalek.js . Non mira solo a test di frontend automatizzati, ma puoi anche fare screenshot con esso. Ha webdriver per tutti i browser importanti. Sfortunatamente quei webdriver sembrano valere la pena migliorare (solo per non dire "buggy" a Firefox).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.