web-dev-qa-db-ja.com

ヘッドレスブラウザーとスクレイピング-ソリューション

ブラウザーの自動テストスーツとスクレイピングが可能なヘッドレスブラウザープラットフォームの可能なソリューションのリストを掲載しようとしています。


ブラウザのテスト/スクラッピング:

  • Selenium -polyglotブラウザ自動化のフラグシップ、Python、Ruby、JavaScript、C#、Haskellなどのバインディング、FirefoxのIDEテスト展開を高速化するための拡張機能)。サーバーとして機能し、多くの機能を備えています。

JAVASCRIPT

  • PhantomJS -JavaScript、スクリーンキャプチャと自動化を使用したヘッドレステストでは、Webkitを使用します。バージョン1.8現在、SeleniumのWebDriver APIが実装されているため、任意のWebDriverバインディングを使用でき、テストはSeleniumと互換性があります。
  • SlimerJS -PhantomJSと同様、WebKitの代わりにGecko(Firefox)を使用
  • CasperJS -JavaScript、PhantomJSとSlimerJSの両方にビルド、追加機能
  • Ghost Driver -JavaScriptPhantomJSWebDriver Wire Protocolの実装。
  • newPhantomCSS -CSS回帰テスト。 PhantomJSおよび Resemble.js を使用して視覚的な回帰テストを自動化するCasperJSモジュール。
  • newWebdriverCSS -プラグイン Webdriver.io 視覚的回帰テストの自動化
  • newPhantomFlow -テストを介したユーザーフローの説明と視覚化。 Webユーザーインターフェイステストの実験的アプローチ。
  • newtrifleJS -Internet Explorerエンジンを使用するためにPhantomJS APIを移植します。
  • newCasperJS IDE(商用)

NODE.JS

  • Node-phantom -PhantomJSnode.jsの間のギャップを埋める
  • WebDriverJs -Selenium Teamによるnode.jsのSelenium WebDriverバインディング
  • WD.js -WebDriver/Selenium 2のノードモジュール
  • yiewd -最新のHarmonyジェネレーターを使用したWD.jsラッパー! yieldでコールバックピラミッドを取り除きます
  • ZombieJs -非常に高速で、node.jsを使用したヘッドレスフルスタックテスト
  • NightwatchJs -Node Selenium Webdriverを使用したJSベースのテストソリューション
  • Chimera -キメラ:phantomJSが行うすべてを実行できますが、完全なJS環境で実行できます
  • Dalek.js -Selenium Webdriverを介したJavaScriptによる自動クロスブラウザテスト
  • Webdriver.io -定義済みの50以上のアクションによるWebDriverバインディングのより良い実装
  • Nightmare -高レベルAPIを備えた電子ブリッジ。
  • jsdom -Webスクレイピングに合わせて調整。 Node.jsに実装された非常に軽量なDOMで、javascriptを使用したページをサポートします。
  • newPuppeteer -Nodeを制御する高レベルAPIを提供するライブラリChromeまたはChromium。 Puppeteerはデフォルトでヘッドレスで実行されます。

ウェブスクラッピング/マイニング

  • Scrapy -Python、主にスクレーパー/マイナー-高速、十分に文書化され、リンク可能 Django Dynamic Sc​​raper Niceマイニング用デプロイメント、または Scrapy Cloud PaaS(サーバーレス)デプロイメントの場合、ターミナルまたはサーバーのスタンドアロンプ​​ロセスで動作し、Celeryで使用でき、ビルドオンTwistedのトップ
  • Snailer -node.jsモジュール、まだテストされていません。
  • Node-Crawler -node.jsモジュール、まだテストされていません。

オンラインツール


関連リンクとリソース

質問:

  • 実際に機能し、文書化されている純粋なNode.jsソリューションまたはPhanthomJS/CasperJSモジュールに対するNodejs

回答:キメラはその方向に行くようです、チェックアウト Chimera

  • Seleniumよりも簡単にJavaScriptを注入できる他のソリューションはありますか?

  • 純粋なRubyソリューションを知っていますか?

Answer:Rubyベースのソリューションでrjkによって作成されたリストをチェックアウトする

  • 関連する技術やソリューションを知っていますか?

お気軽にこの質問を編集し、必要に応じてコンテンツを追加してください!ご協力ありがとうございます!

356
Inoperable

もしRubyがあなたのものなら、あなたも試してみることができます:

また、Nokogiri gemはスクレイピングに使用できます。

nokogiriをpackt出版で掻き取るための利用方法についての専用の本があります

32
rkj

http://triflejs.org/ はphantomjsに似ていますがIEに基づいています

10

JSベースのSeleniumの一種は Dalek.js です。自動化されたフロントエンドテストを目的としているだけでなく、それを使ってスクリーンショットを作成することもできます。それはすべての重要なブラウザ用のWebドライバを持っています。残念ながら、これらのWebドライバは改善する価値があるようです(Firefoxに「バグがある」と言ってはいけない)。

7