ホームページ >バックエンド開発 >PHPチュートリアル >PHPコレクションクラス Snoopy.class.php

PHPコレクションクラス Snoopy.class.php

WBOY
WBOYオリジナル
2016-07-25 09:13:301048ブラウズ
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、検証を書かないと合格しません~

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。