問題タブ [anemone]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - Ruby Anemone 実行時の Heroku H12 リクエストのタイムアウト
ユーザー指定のドメインで Anemone (Ruby Web スパイダー/クローラー) を実行する Heroku でホストされている Ruby アプリがあります。ユーザーが中規模から大規模のドメインを選択すると、ドメインがクラッシュし、ログに H12 エラー (要求タイムアウト) が表示されます。
これは、Anemone の実行に時間がかかり (>30 秒)、実行中にユーザーにフィードバックがないためです。アネモネに更新をユーザーに表示させる方法、またはステータス バーを組み込む方法はありますか? サイトのクラッシュを防ぐ方法はありますか? Anemone のドキュメントには、ドメインをスパイダー化する「ピースごと」の方法を許可するものは何もありませんでしたが、何かできることがあるはずです。
https://devcenter.heroku.com/articles/error-codes#h12-request-timeout
http://anemone.rubyforge.org/
ruby - Anemone / Nokogiri Web スクレーパーで NIL を処理するには?
ボンネットの下にノコギリを使ったアネモネでスクレイパーを書いています。
.details h2'
セレクターが HTML にないために何も返さない場合があり、セレクターを呼び出すtext
と例外がスローされます。
あちこちでif/elseを避けたい...
一貫性のないマークアップによって生成されたエラーを処理する、より雄弁な方法はありますか? たとえば、CoffeeScript には存在演算子がありperson.name?.first()
ます。HTML に要素がある場合は、オブジェクトを作成してテキストを呼び出します。そうでない場合は、先に進み、ハッシュに追加しないでください。
ruby - anemone gem を使用してすべての URL を取得する (非常に大きなサイト)
インデックスを作成したいサイトはかなり大きく、1.x 百万ページです。私は本当にすべての URL の json ファイルが必要なので、それらに対していくつかの操作 (並べ替え、グループ化など) を実行できます。
基本的な anemome ループはうまく機能しました。
しかし(サイトのサイズのせい?)しばらくすると端末がフリーズしました。そのため、MongoDB をインストールし、以下を使用しました。
現在実行中ですが、朝に戻ったときにjsonファイルに出力があると非常に驚かれることでしょう-MongoDBを使用したことがなく、ストレージの使用に関するアネモネのドキュメントの部分が明確ではありませんでした(私には少なくとも)。以前にこれをやったことがある人は、ヒントを教えてもらえますか?
ruby-on-rails - Anemone、Boilerpipe、Nokigiri で 500 Internal Server Error と 404 Page Not Found を処理する方法
Web サイトをクロールする必要があるツールを実装しています。クロールにはアネモネを使用しており、各アネモネのページではボイラーパイプとノコギリを使用して HTML 形式などを管理しています。
私の問題は、500 内部サーバー エラーが発生した場合、ページがないために Nokogiri が失敗することです。
上記の場合、500 内部サーバー エラーが発生すると、アプリケーションは Nokogiri::HTML.parse() でエラーを返します。この問題は避けたい。サーバーでエラーが発生した場合、このページを無視して計算を続行します。
これらのツールで 500 Internal Server Error と 404 Page Not Found を処理する方法はありますか?
よろしく、ヒューゴ
ruby - アネモネとの URL 構造のマッチング
現在、アネモネで次のことを行っています。
でもやりたい
代わりに、次のような URL からのみクロールします。
http://www.findbrowsenodes.com/us/Apparel/1036682 http://www.findbrowsenodes.com/us/Apparel/1040664 http://www.findbrowsenodes.com/us/ArtsAndCrafts/2617942011 http://www .findbrowsenodes.com/us/Baby/165797011
どのようにアイデアはありますか?
ruby - Socksify gem と Tor で anemone を使用してページ データにアクセスできない
anemone gem を使用してウェブサイトをクロールする Ruby スクリプトを作成しました。スクリプトは、直接使用すると問題なく実行されます。
しかし、スクリプトからのすべてのTCP呼び出しがsocks5でルーティングされるように、socksify gemを使用したいと思います. 同じために次のことを行いました。
- Torプロジェクトをインストールして開始し、自分のマシンで実行しています
- インストールされたsockify gem
- ここ
socksify_ruby localhost 9050 myscript.rb
に示されているように、次のコマンドを実行しました
ただし、この場合、アネモネはページを検出しません。私がやっている間違いを教えてください。
ruby-on-rails - Ruby Web クローラー gem からループの出力をテキスト・ファイルに書き込む
私は完全な Ruby 初心者で、現在 Treehouse のチュートリアルを進めていますが、仕事用に Anemone クロールのコンテンツをテキスト ファイルに出力するための簡単なヘルプが必要です (私は SEO です)。次の出力をテキストファイルにダンプするにはどうすればよいですか?
助けていただければ幸いです。
ruby - アネモネ ルビー スパイダー - ドメイン名なしでキー値配列を作成する
Anemoneを使用してドメインをスパイダーしていますが、正常に動作します。
クロールを開始するコードは次のようになります。
これは、次のようにドメインのすべてのページ URL を非常にうまく出力します。
私がやりたいことは、キーの URL の最後の部分と、値の URL「ドメインを引いたもの」を使用して、キーと値のペアの配列を作成することです。
例えば
これが初歩的なものである場合は申し訳ありませんが、私はRuby初心者です。
google-analytics - カスタム クローラーで偽の分析統計を防止する
PhantomJS やAnemoneのような Ruby クローラーを使用して、Google アナリティクスの偽の統計情報を防ぐ方法はありますか?
私たちの監視ツール (両方に基づいています) は、クライアントからサイトをクロールし、特定のドメイン内の各リンクのリンク ステータスを更新します。
巨大なトラフィックをシミュレートする問題。
Cookie やヘッダーなどを使って「私はロボットです。追跡しないでください」などと言う方法はありますか?
( クローラー IP を [フィルターとして] Google アナリティクスに追加することは、最善の解決策ではない可能性があります )
前もって感謝します