問題タブ [web-crawler]

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.

0 投票する
2 に答える
3668 参照

python - Python で Web クロールを行うための最適なビルド済みライブラリは何ですか?

将来の分析のために、ウェブサイトの有限リストのコンテンツをクロールしてローカルに保存する必要があります。私は基本的に、すべてのページを丸呑みし、すべての内部リンクをたどって、公開されているサイト全体を取得したいと考えています。

そこにたどり着くための既存の無料ライブラリはありますか? チルカットを見たことがあるが、それは有料だ. ここでベースライン機能を探しているだけです。考え?提案?


正確な重複:私が使用できる優れた Python ベースの Web クローラーを知っている人はいますか?

0 投票する
2 に答える
9449 参照

c# - Asp.net Request.Browser.Crawler - 動的クローラー リスト?

Request.Browser.Crawler が C# で常に False になる理由を学びました ( http://www.digcode.com/default.aspx?page=ed51cde3-d979-4daf-afae-fa6192562ea9&article=bc3a7a4f-f53e-4f88-8e9c-c9337f6c05a0 ) .

Request.Browser.Crawler が本当に役立つように、クローラーのリストを動的に更新する方法を使用する人はいますか?

0 投票する
3 に答える
1568 参照

c# - シンプルな「スパイダー」の作成

私はスパイダリングについて調査しましたが、作成しようとしている非常に単純なアプリには少し複雑すぎると思います。Web ページの一部のデータは、ブラウザーによって表示されているだけであるため、ソースで表示できません。

WebBrowser コントロールに表示する特定の Web ページから値を取得したい場合、このブラウザーのコンテンツから値を読み取る方法はありますか?

そうでない場合、これにどのようにアプローチするかについて誰か提案がありますか?

0 投票する
6 に答える
387 参照

web - 検索エンジンのスパイダーがサイトを攻撃している場合はどうすればよいですか?

私は小さな Web サーバーを実行していますが、最近、検索エンジンのスパイダーによってクリーム化されています。冷やす正しい方法とは?定期的に 5xx 応答を送信する必要がありますか? 使用すべき robots.txt 設定はありますか? または、他の何か?

0 投票する
5 に答える
2610 参照

seo - robots.txt: 一部を除いてすべて許可しないのはなぜですか?

Ask、Google、Microsoft、Yahoo! 以外のすべてのクローラーを禁止することについて、しばらく考えていました。私のサイトから。

この背後にある理由は、他の Web クローラーによってトラフィックが生成されているのを見たことがないからです。

私の質問は次のとおりです。

  1. しない理由はありますか?
  2. 誰もこれをやったことがありますか?
  3. 悪影響はありましたか?

更新:
今までは、ブラックリスト アプローチを使用していました。クローラーが気に入らない場合は、許可しないリストに追加します。
私はブラックリストに登録するのは好きではありませんが、これは終わりのない話であるためです。常により多くのクローラーが存在します。

私は、本当の醜い不正な動作をするクローラーについてはそれほど心配していません。それらは自動的に検出され、ブロックされます。(そして、彼らは通常、とにかくrobots.txtを要求しません:)

しかし、多くのクローラーは実際に不正な動作をしているわけではなく、私や私の顧客にとって何の価値も生み出していないようです。
たとえば、次の Google になると主張する Web サイトを強化するクローラーがいくつかあります。より良いだけ。それらからのトラフィックを見たことがなく、上記の 4 つの検索エンジンのどれよりも優れているとは思えません。

更新 2:
しばらくの間、いくつかのサイトへのトラフィックを分析してきましたが、妥当な小規模サイトでは、1 日あたり 100 人のユニークな人間の訪問者 (=人間ではないことを識別できない訪問者) のようです。生成されたトラフィックの約 52% は、自動化されたプロセスによるものです。

全自動訪問者の 60% は robots.txt を読んでおらず、40% (総トラフィックの 21%) が robots.txt を要求しています。(これには、Ask、Google、Microsoft、および Yahoo! が含まれます)。

したがって、私の考えでは、私にとって何の価値も生み出していないように見える正常に動作するすべてのクローラーをブロックすると、帯域幅の使用とサーバーの負荷を約 12% から 17% 削減できます。

0 投票する
5 に答える
3703 参照

persistence - Greasemonkey ベースのクローラーのデータを保存する最良の方法は?

Greasemonkey を使用してサイトをクロールしたいのですが、値を一時的に保存するには、GM_setValue を使用するよりも良い方法があるのではないかと考えています。

私がやりたいことは、ソーシャル ネットワークで連絡先をクロールし、プロフィール ページから Twitter の URL を抽出することです。

私の現在の計画は、各プロファイルを独自のタブで開くことです。これにより、通常の閲覧者のように見えます (つまり、css、スクリプト、画像はブラウザーによって読み込まれます)。次に、GM_setValue を使用して Twitter の URL を保存します。すべてのプロファイル ページがクロールされたら、保存された値を使用してページを作成します。

ただし、ストレージオプションにはあまり満足していません。多分もっと良い方法がありますか?

ユーザー プロファイルを現在のページに挿入して、同じスクリプト インスタンスでそれらをすべて処理できるようにすることを検討しましたが、XMLHttpRequest が通常のユーザーが開始した要求と区別できないように見えるかどうかはわかりません。

0 投票する
2 に答える
2984 参照

web-crawler - Web クローラーを最適に開発する方法

私は情報をコンパイルするためにいくつかのクローラーを作成することに慣れており、Web サイトにアクセスすると情報が必要になり、ほとんどの場合シェル スクリプトを使用し、時には PHP を使用して、そのサイトに固有の新しいクローラーを開始します。

私が行う方法はfor、ページリストを簡単に反復し、それwgetをダウンロードしsed、、、または他のユーティリティを使用してページをクリーンアップし、必要な特定の情報を取得することです。trawk

サイトによっては、すべてのプロセスに時間がかかり、すべてのページをダウンロードするにはさらに時間がかかります。そして、すべてを複雑にする AJAX サイトに足を踏み入れることがよくあります

それを行うためのより良い方法、より高速な方法、またはそのような作業を支援するアプリケーションや言語があるかどうか疑問に思っていました.

0 投票する
4 に答える
613 参照

caching - ページを検索エンジンのインデックスから強制的に削除するには?

状況: Google がフォーラムのページをインデックスに登録しました。スレッドは現在削除されています。Google やその他の検索エンジンでキャッシュされたコピーを削除するにはどうすればよいですか? リンクされたページはもう存在せず、インデックスを更新して有効に保つことが彼らの最善の利益になるはずなので、彼らがそれに反対することはないと思います.

これは可能ですか、それともインデックスの更新を数か月待たなければなりませんか? それとも、ページは永遠にそこにとどまりますか?

私はそれぞれのサイトの所有者ではないため、たとえば robots.txt を変更することはできません。「サードパーティ」として強制的に更新したいと思います。

また、2 日前に作成したそのリソースの新しいページが既にキャッシュにあることにも気付きました。では、このドメインの無効なページが削除されるまでにかかる時間を見積もることはできますか?

編集:だから私はテストをしました。Google がページを削除するのに 2 か月もかかりませんでした。かなり長い時間...