クローラーを開発するには、まずクローラーが何に使用されるかを知る必要があります。これを使用して、さまざまな Web サイトで特定のキーワードを含む記事を検索し、そのリンクを取得して、すぐに読めるようにしたいと考えています。
個人的な習慣によれば、最初にインターフェイスを作成し、自分のアイデアを明確にする必要があります。
1. さまざまな Web サイトにアクセスします。次に、URL 入力ボックスが必要です。
2. 特定のキーワードを含む記事を検索します。次に、記事タイトルの入力ボックスが必要です。
3. 記事のリンクを取得します。次に、検索結果を表示するコンテナが必要になります。
リーリーコードをアップロードし、独自のスタイル調整を追加するだけで、インターフェースが完成します:
次のステップは、PHP を使用して関数を作成することです。最初のステップは、Web サイトの HTML コードを取得することです。1 つずつは紹介しません。ここでは、curl を使用して Web サイトの URL を渡すと、HTML コードが得られます。 リーリー
HTML コードを取得しても、すぐに問題、つまりエンコーディングの問題が発生し、次のマッチングのステップが無駄になる可能性があります。ここでは、取得した HTML コンテンツを utf8 エンコーディングに一律に変換します。 リーリーWeb サイトの HTML と記事の URL を取得するには、次のステップは Web ページの下にあるすべての a タグを照合することです。これには正規表現を使用する必要があります。多くのテストを経て、最終的により信頼性の高い正規表現が得られました。 a タグの下の構造は非常に複雑なので、それがタグである限り、それを手放しません: (最も重要なステップ)
リーリーマッチング結果は $matches にあり、これはおそらく次のような多次元グループです:
リーリーこのデータを取得できる限り、他のすべては完全に操作可能です。この要素グループを検索し、必要な a タグを見つけて、その a タグの対応する属性を取得できます。タグを操作する方が便利です:
リーリーもちろん、これは 1 つの方法にすぎません。正規表現を使用して必要な情報を照合したり、データを使って新しいトリックを実行したりすることもできます。
次のステップは、もちろん、結果をフロントエンドに送り返して表示し、js を使用してフロントエンドでデータを取得し、jquery を使用して動的に追加します。コンテンツを編集して表示します:
リーリー上記の最終レンダリング:
以上がこの記事の全内容です、皆様の学習のお役に立てれば幸いです。
興味があるかもしれない記事: NodeJSでクローラーを作る全過程
http://www.bkjia.com/PHPjc/1117089.html