Snoopyは、ブラウザをシミュレートしてWebコンテンツを取得し、フォームを送信するために使用されるphpコレクションクラスです。 スヌーピーの特徴をいくつかご紹介します: Webコンテンツのクロールが簡単 ページテキストを簡単に取得できます(HTMLタグを削除します) Webページ内のリンクを簡単に取得できます プロキシ クロールをサポート 基本的なユーザー名とパスワード認証をサポートします ユーザーエージェント、リファラー、Cookie、ヘッダーコンテンツの設定をサポート ブラウザのステアリングをサポートし、ステアリングの深さを制御します ページ上のリンクを高品質のリンクに変換できます データを送信してリベートを受け取るのは簡単です HTMLフレームを追跡できます リダイレクト時の Cookie の受け渡しをサポートします スヌーピークラス、メソッド: フェッチ($URI) Web ページのコンテンツをクロールするために使用されるメソッド。 $URI パラメータは、クロールされた Web ページの URL アドレスです。取得した結果は $this->results に保存されます。フレームをスクレイピングしている場合、スヌーピーは各フレームを追跡して配列に保存し、$this->results に保存します。 フェッチテキスト($URI) このメソッドは fetch() に似ていますが、唯一の違いは、このメソッドが HTML タグやその他の無関係なデータを削除し、Web ページ内のテキスト コンテンツのみを返すことです。 フェッチフォーム($URI) このメソッドは fetch() に似ていますが、唯一の違いは、このメソッドが HTML タグやその他の無関係なデータを削除し、Web ページ内のフォーム コンテンツ (フォーム) のみを返すことです。 フェッチリンク($URI) このメソッドは fetch() に似ていますが、唯一の違いは、このメソッドが HTML タグやその他の無関係なデータを削除し、Web ページ内のリンクのみを返すことです。デフォルトでは、相対リンクは自動的に完成され、完全な URL に変換されます。 送信($URI,$formvars) このメソッドは、$URLで指定されたリンクアドレスに確認フォームを送信します。 $formvars はフォームパラメータを格納する配列です。 送信テキスト($URI,$formvars) このメソッドは submit() に似ていますが、唯一の違いは、このメソッドは HTML タグやその他の無関係なデータを削除し、ログイン後に Web ページのテキスト コンテンツのみを返すことです。 リンクを送信($URI) このメソッドは submit() に似ていますが、唯一の違いは、このメソッドが HTML タグやその他の無関係なデータを削除し、Web ページ内のリンクのみを返すことです。デフォルトでは、相対リンクは自動的に完成され、完全な URL に変換されます。 クラス属性: (デフォルト値は括弧内にあります) $host 接続されているホスト $port 接続するポート $proxy_host 使用されるプロキシ ホスト (存在する場合) $proxy_port 使用されるプロキシ ホスト ポート (存在する場合) $agent ユーザーエージェントの変装 (スヌーピー v0.1) $referer ルート情報 (利用可能な場合) $Cookie (あれば) $rawheaders その他のヘッダー情報 (ある場合) $maxredirs リダイレクトの最大数、0=許可されません (5) $offsiteok オフサイトへのリダイレクトを許可するかどうか (true) 。 $expandlinks 完全なアドレスへのすべてのリンクを完了するかどうか (true) $user 認証のユーザー名 (利用可能な場合) $pass認証のユーザー名(利用可能な場合) $accept http 受け入れタイプ (image/gif、image/x-xbitmap、image/jpeg、image/pjpeg、*/*) $error エラーがある場合、どこに報告するか $response_code サーバーから返されたレスポンスコード $headers サーバーから返されたヘッダー情報 $maxlength 返されるデータの最長長 $read_timeout 読み取り操作のタイムアウト (PHP 4 Beta 4+ が必要) を 0 に設定すると、タイムアウトなしになります $timed_out 読み取り操作がタイムアウトすると、この属性は true を返します (PHP 4 Beta 4+ が必要) $maxframes 追跡可能なフレームの最大数 $status キャプチャされた http のステータス $temp_dir Webサーバーが書き込むことができる一時ファイルディレクトリ(/tmp) $curl_path cURL バイナリ ディレクトリ。cURL バイナリがない場合は false に設定します スヌーピー公式サイト:http://sourceforge.net/projects/snoopy/ この記事が大多数の php 開発者にとって役立つことを願っています。この記事を読んでいただきありがとうございます。 php の技術的な問題について詳しく知りたい場合は、グループに参加して議論することを歓迎します: 256271784、検証コード: cxy、検証を書かないと合格しません~ |