簡単に言えば、Web クローラーは、使用する「オフライン読み取り」ツールに似ています。オフラインであっても、インターネットに接続する必要があります。そうしないと、どうやってダウンロードできるのでしょうか?それで、違いは何でしょうか? 1) Web クローラーは高度に構成可能です。 2) ウェブクローラーはキャプチャしたウェブページ内のリンクを解析できる 3) Webクローラーはシンプルなストレージ構成を持つ 4) ウェブクローラーはウェブページの更新に基づいたインテリジェントな分析機能を備えている 5) ウェブクローラーは非常に効率的である では、実際には要件である機能に基づいて、クローラーをどのように設計すればよいのでしょうか?どのステップに重点を置くべきでしょうか? 1) URLトラバーサルと記録 Larbin はこれをうまくやっています。実際、URL をトラバースするのは非常に簡単です。たとえば、次のようになります。 cat [結果] tr \" \\n gawk '{print $2}' pcregrep ^http:// URLのリストを取得できます。 2) マルチプロセスとマルチスレッド それぞれに利点があります。現在、booso.com などの一般的な PC は、1 日に 5G のデータを簡単にクロールできます。約20万のウェブページ。 3) 時間更新制御 最も愚かなことは、重量を更新する時間がなく、一気に登り、戻ってもう一度登ることです。 通常、次のクロールのデータは前回のクロールと比較されます。5 回連続して変化がない場合は、この Web ページをクロールする時間間隔が 2 倍になります。 5 回連続のクロール中に Web ページが更新されると、クロール時間は元の時間の半分に短縮されます。 効率性が成功の鍵の 1 つであることに注意してください。 4) 這う深さはどのくらいですか? それは状況によります。非常に強力で、Web クローラーを実行するサーバーが何万台もある場合は、この点をスキップすることをお勧めします。 私のように Web クロール用のサーバーが 1 つしかない場合は、次の統計を知っておく必要があります。 ウェブページの深さ: ウェブページの数: ウェブページの重要度 0 : 1 : : 10 1:20::8 2: :600: :5 3: :2000: :2 4上記:6000:一般的には計算できない まあ、レベル 3 まで登れば十分です。さらに深く進むと、データ量が 3/4 倍になり、重要度が大幅に低下します。これを「ドラゴンの種を植えてノミを収穫する」といいます。 5) クローラーは通常、互いのウェブページを直接クロールしません。通常はプロキシを経由してクロールします。このプロキシには、負荷を軽減する機能があります。相手のウェブページが更新されていない場合は、ヘッダータグを取得するだけで十分です。一度にすべてを送信する必要がないため、ネットワーク帯域幅を大幅に節約できます。 Apache Web サーバーに記録された 304 は通常キャッシュされます。 6) 時間があるときにrobots.txtを確認してください 7) ストレージ構造。 これは意見の問題です。Google は gfs システムを使用しています。サーバーが 7 台または 8 台ある場合は、NFS システムを使用することをお勧めします。サーバーが 70 台または 80 台ある場合は、afs システムを使用することをお勧めします。サーバーが 1 台しかない場合は、どちらでも問題ありません。 以下は、私が作成したニュース検索エンジンがデータを保存する方法のコード スニペットです。 NAME=`echo $URL perl -p -e 's/([^\w\-\.\@])/$1 eq "\n" ? "\n":sprintf("%%%2.2x",ord($1))/eg'`mkdir -p $AUTHOR newscrawl.pl$URL--user-agent="news.booso.com ( http://booso.com)"-outfile=$AUTHOR/$NAME
1. 通常、次のクロールのデータは前回のクロールと比較されます。5 回連続して変更がない場合は、Web ページをクロールする時間間隔が 2 倍になります。5 回連続のクロール中に Web ページが更新された場合は、設定されたクロール時間が元の時間の 1/2 に短縮されます。 ウェブページの更新頻度は、検索エンジンのスパイダーによるウェブサイトのクロールの度合いに重大な影響を及ぼします。ウェブページがクロールされる回数が多いほど、含まれる可能性が高くなり、含まれるページの数も増えます。インクルージョンは SEO の最も基本的な部分です。 原題: 検索エンジンにおけるウェブクローラーの設計分析 キーワード: ネットワーク |
<<: Googleがユーザーに注意喚起:リンクの交換はPRインデックスを下げる
>>: ウェブサイトのPR価値とページのPR価値について簡単に説明します
[51CTO.com からのオリジナル記事] 機械学習は人工知能の中核であり、コンピューターをインテ...
[51CTO.com からのオリジナル記事] 2016 OpenStack Barcelona Su...
自動車は家庭にとって生活必需品となり、それを支える設備も販売のホットスポットとなっています。自動車B...
2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますSEO 基...
3月14日、Tencent Cloudはデータモデルとデータ探索という新製品を正式にリリースしました...
以前「Gmail Bar」フォーラムで盛んに議論されたGmail対応メールクライアントYoMailは...
yourlasthost は、特別価格で 2 つの OpenVZ 仮想 VPS をリリースします。価...
ウェブサイトがどのような業界のものであっても、市場を独占している類似または関連ウェブサイトが常に存在...
Googleの公式ブログによると、スマートフォンユーザーはインターネットユーザーの増加が最も著しい市...
ウェブサイトを構築した多くの企業や個人のウェブマスターにとって、ウェブサイトに効果的なキーワードを選...
友好的なリンクの交換に関しては、誰もが言いたいことはたくさんあるはずです。「空の」リンクを交換する場...
オーストリアのライファイゼン銀行インターナショナルの子会社であるライファイゼン銀行ウクライナは、ロシ...
米国で有名な高防御データセンターであるSharktechは、ロサンゼルスデータセンターにある特別価格...
Kafka のメッセージ送信保証メカニズムは非常に直感的です。プロデューサーがブローカーにメッセージ...
[[402864]]この記事はWeChatの公開アカウント「Mu Niao Za Ji」から転載した...