ホームページ > バックエンド開発 > PHPチュートリアル > PHP収集ツール スヌーピーお試し体験_PHPチュートリアル

PHP収集ツール スヌーピーお試し体験_PHPチュートリアル

WBOY
リリース: 2016-07-21 15:27:34
オリジナル
1117 人が閲覧しました

スヌーピーとは何ですか? (スヌーピーをダウンロード)
スヌーピーは、Web ブラウザーの機能を模倣するために使用される php クラスであり、Web コンテンツの取得とフォームの送信のタスクを完了できます。
スヌーピーのいくつかの機能:
* Web ページのコンテンツのクロールに便利
* Web ページのテキスト コンテンツのクロールに便利 (HTML タグの削除)
* Web リンクのクロールに便利
* プロキシ ホストをサポート
* 基本的なユーザー名をサポートパスワードの検証
* user_agent、リファラー(ソース)、Cookie、ヘッダーコンテンツ(ヘッダーファイル)の設定​​をサポート
* ブラウザーのリダイレクトをサポートし、リダイレクトの深さを制御できます
* Web ページ内のリンクを高品質の URL に拡張できます(デフォルト)
*データを送信して戻り値を取得するのに便利
* トラッキング HTML フレームワークをサポート (v0.92 で追加)
* リダイレクト時の Cookie の受け渡しをサポート (v0.92 で追加)
さらに詳しく知りたい場合は、自分で Google してください 。簡単な例をいくつか示します:
1 指定された URL のコンテンツを取得します
PHP コード

コードをコピーします コードは次のとおりです:

$url = "http://www.jb51.net ";
include( "snoopy.php");
$snoopy = new Snoopy;
$snoopy->fetch($url); //すべてのコンテンツを取得
echo $snoopy->results; //結果を表示
$snoopy-> fetchtext //テキストコンテンツを取得(HTMLコードを削除)
$snoopy->fetchlinks //リンクを取得
$snoopy->fetchform //フォームを取得

2 フォーム送信
PHPコード
コードをコピーします コードは次のとおりです:

$formvars["username"] = "admin";
$formvars["pwd"] = "admin"; jb51.net";//フォーム送信アドレス
$snoopy->submit($action,$formvars);//$formvars は送信された配列です
echo $snoopy->results; //フォーム送信後に返された結果を取得しますフォームが送信されました
$snoopy->submittext; //送信後は HTML なしでテキストのみを返します
$snoopy->submitlinks;//送信後にはリンクのみを返します

フォームが送信されたので、次のことができます次に、IP を偽装して閲覧しましょう
3 偽装


コードをコピー コードは次のとおりです:
$formvars["username"] = "admin" ;
$formvars["pwd"] = "admin";
$action = "http://www.jb51.net";
$snoopy = 新しいスヌーピー; ;cookies["PHPSESSID"] = 'fc106b1918bd522cc863f36890e6fff7'; //セッションIDを偽装
$ snoopy->agent = "(互換性; MSIE 4.01; MSN 2.5; AOL 4.0; Windows 98)" // ブラウザを偽装
$snoopy- >referer = "http://s.jb51.net"; //ソースページのアドレスを偽装します http_referer
$snoopy->rawheaders["Pragma"] = "no-cache"; //キャッシュの http ヘッダー情報
$snoopy->rawheaders["X_FORWARDED_FOR"] = "127.0.0.101" ; //IP を偽装
$snoopy->submit($action,$formvars);


Itセッションを偽装したり、ブラウザを偽装したり、IP を偽装したりできることがわかりました。ははは、たくさんのことができます。
たとえば、確認コードとIPアドレスを使用して投票すると、継続的に投票できます。
追記: ここでの IP の偽装は、実際には http ヘッダーの偽装なので、REMOTE_ADDR を通じて取得した IP は偽装できません。
逆に、http ヘッダー (プロキシを防止できる種類) を通じて IP を取得する人は、独自の IP を作成できます。 IP。
コードを確認する方法について簡単に説明します。
まず通常のブラウザを使用してページを表示し、確認コードに対応するセッションIDを見つけます。
セッションIDと確認コードの値を同時に書き留めます。
次にsnoopyを使用します。それを偽造するために。
原則: 同じセッションIDであるため、取得される確認コードは初めて入力したものと同じです。
4 場合によっては、さらに多くのものを偽造する必要があるかもしれません。スヌーピーが完全に考えてくれました
PHP コード



コードをコピーします

コードは次のとおりです:
$snoopy->proxy_host = "www.jb51 .net"; $snoopy->proxy_port = "8080"; //プロキシを使用する $snoopy->maxredirs = 2; //リダイレクト数
$snoopy->expandlinks = true; //完了かどうかリンクは収集されます
// がよく使用されます。たとえば、リンクは /images/taoav.gif ですが、実際には完全なリンク http://www.jb51.net/images/taoav.gif に変更できます。 、 ereg_replace は、最終出力中にこの場所で使用できます。この関数はそれ自体を置き換えます
$snoopy->maxframes = 5 //許可される最大フレーム数
//フレームを取得するときに、$snoopy->results が返されることに注意してください。 an array
$snoopy->error //エラーを返します Information


上記の基本的な使い方は理解できたので、例を挙げて説明します:
PHP コード


コードをコピー

コードは次のとおりです。以下に続きます:

//echo var_dump($_SERVER);
$snoopy = 新しいスヌーピー->agent = "Mozilla/5.0" ; Windows NT 5.1; zh-
CN; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5 FirePHP/0.2.1"; //これはブラウザーの情報です。Cookie を表示するために使用したブラウザーは次のとおりです。ブラウザ情報 (ps:$_SERVER はブラウザ情報を表示できます)
$snoopy->referer = "http://bbs.jb51.net/index.php";
$snoopy-> ;expandlinks = true; snoopy->rawheaders["COOKIE"]="__utmz=17229162.1227682761.29.7.utmccn=(参照)|utmcsr=jb51.net|utmcct=/html/index.html|utmcmd=referral; cdbphpchina_smile=1D2D0D1; cdbphpchina_cookietime=25 92000 ; __utma=233700831.1562900865.1227113506.1229613449.1231233266.16; __utmz=233700831.123123326 6.16.8.utmccn=(参照)|utmcsr=localhost:8080|ut mcct=/test3.php|utmcmd=referral; __utma=17229162.1877703507.1227113568.1231228465 .1231233160.58; ; xscdb_cookietime=2592000; __utmc=17229162; B6KLPg3DtWpTMUI4ttqNNVpukUj6ElM; cdbphpchina_onlineusernum=3721 ";
$snoopy->fetch("http://bbs.jb51.net");
$n =ereg_replace("href="","href="http://bbs.jb51.net/" ,$snoopy->results );
echo ereg_replace("src="","src="http:/) /bbs.jb51.net/",$n);
?>


これはシミュレートされたログインです PHPCHINA フォーラムのプロセスでは、まずブラウザの情報を確認する必要があります: echo var_dump($_SERVER);このコードでブラウザの情報を確認できます。$_SERVER['HTTP_USER_AGENT'] 以降の内容をコピーし、$snoopy->agent に貼り付けて、自分の
COOKIE を確認してください。自分のフォーラム アカウントを作成するには、ブラウザのアドレス バーに
javascript:document.write(document.cookie) と入力します。Enter キーを押すと、Cookie 情報が表示されます。
を $snoopy->rawheaders["COOKIE" の末尾にコピーして貼り付けます。 ]=。 (セキュリティ上の理由から私の Cookie 情報は削除されています)

次に、次の点に注意してください:

# $n=ereg_replace("href="","href="http://bbs.jb51.net/", $snoopy ->結果 );

# echo ereg_replace("src="","src="http://bbs.jb51.net/",$n);

これらの 2 つのコードはすべての HTML ソース コードのアドレスを収集しますコンテンツ内の は相対リンクであるため、フォーラムの画像と CSS スタイルを参照できるように絶対リンクに置き換える必要があります。





http://www.bkjia.com/PHPjc/323716.html
www.bkjia.com

tru​​e

技術記事スヌーピーとは何ですか? (スヌーピーのダウンロード) スヌーピーは、Web ブラウザーの機能を模倣するために使用される php クラスで、Web コンテンツの取得とフォームの送信のタスクを完了できます。スヌーピーの特徴: * スクエア...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート