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


368

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


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

  • セレン - ポリグロットの速いテスト展開のためのブラウザの自動化におけるフラッグシップやPython、Rubyのは、JavaScript、C#、Haskellの多くのバインディング、Firefox用IDE(拡張として)。サーバーとして機能し、多くの機能を備えています。

ジャバスクリプト

  • PhantomJS - JavaScriptは、スクリーンキャプチャと自動化によるヘッドレステストで、Webkitを使用します。バージョン1.8以降、SeleniumのWebDriver APIが実装されているため、任意のWebDriverバインディングを使用でき、テストはSeleniumと互換性があります
  • SlimerJS - PhantomJSと同様に、WebKitの代わりにGecko(Firefox)を使用します
  • CasperJS - PhantomJSとSlimerJSの両方に基づいて構築されたJavaScriptには、追加機能があります
  • ゴーストドライバ - のJavaScriptの実装webdriverをワイヤプロトコルのためPhantomJS
  • 新しい PhantomCSS -CSS回帰テスト。PhantomJSと Resemble.jsを使用して視覚回帰テストを自動化するためのCasperJSモジュール。
  • 新しい WebdriverCSS-視覚回帰テストを自動化するための Webdriver.ioのプラグイン
  • 新しい PhantomFlow-テストによるユーザーフローの説明と視覚化。Webユーザーインターフェイステストへの実験的アプローチ。
  • 新しい trifleJS -PhantomJS APIを移植して、Internet Explorerエンジンを使用します。
  • 新しい CasperJS IDE (商用)

NODE.JS

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

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

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

オンラインツール


関連リンクとリソース

質問:

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

回答:キメラは、チェックアウト、その方向に行くように思われるキメラ

  • Seleniumよりも簡単にJavaScriptインジェクションが可能な他のソリューションはありますか?

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

回答: Rubyベースのソリューションを使用してrjkによって作成されたリストをチェックアウトしてください

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

この質問を自由に編集して、必要に応じてコンテンツを追加してください。あなたの貢献に感謝します!


1
それがあなたが欲しいものかどうか分かりませんが、ウェブページのクロール、domの検査などのためにnpmjs.org/package/crawlerのようなモジュールが好きです。jsdomを使用し、jQueryをセレクターエンジンとして使用できます。これ(クローラーを使用)も興味深いようです:npmjs.org/package/snailer
hereandnow78

node-phantomモジュールで多くの成功を収めてきました。かなり単純明快で、十分に文書化されています。javascriptインジェクションはサポートされています。
Josh C.

1
GhostDriverはphantomJSを使用するSelenium-Webdriverの実装であることをご存じでしょう。
ロビーウェアハム

2
また、これは役に立つかもしれません:blog.screen-scraper.com/2010/06/28/...
トッド・

1
視覚的なスクレイピングと比較:PhantomCSSとPhantomFlow
FelipeAls

回答:


35

Rubyを使用する場合は、次の方法も試してください。

また、のこぎりの宝石はかき取りに使用できます。

パックパブリッシングでのこぎりをかき集める方法についての専用の本があります


watirは上記のライブラリよりも1000倍簡単です。
Pavan Katepalli

Pythonの「webbot」ライブラリは、簡単なWeb自動化のための豊富な機能を提供します。
Natesh bhat

11

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


このリンクで質問に答えることができますが、回答の重要な部分をここに含め、参照用のリンクを提供することをお勧めします。リンクされたページが変更されると、リンクのみの回答が無効になる可能性があります。
サティッシュ2014

5
それは正常に聞こえますが、この質問自体はリソースのコレクションです。リストに組み込まれる短い説明のリンクは、フォーマットに適合しており、理にかなっています。
フェデリコガラッシ2014

7

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

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.