PHP でデータを収集する最も一般的な方法は、curl 関数を使用することです。curl 関数は高性能でマルチスレッドなので、必要に応じて参考のために PHP 収集プログラムを紹介します。
機能
コードは次のとおりです
コードをコピー
/**
* リモート URL のコンテンツを取得します
* @param 文字列 $url
* @return 文字列
*/
関数 get_url_content($url) {
if(function_exists(curl_init)) {
$ch =curl_init();
$タイムアウト = 5;
curl_setopt ($ch、CURLOPT_URL、$url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch、CURLOPT_CONNECTTIMEOUT、$timeout);
curl_setopt ($ch、CURLOPT_TIMEOUT、$timeout);
$file_contents =curl_exec($ch);
カール_クローズ($ch);
} その他 {
$file_contents = ファイル_get_contents($url);
}
$file_contents を返します
}
メソッドの呼び出し
コードは次のとおりです
コードをコピー
$url = 'http://www.bKjia.c0m';
$a = get_url_content($url);
エコー $a;
上記は単なる例です。これを適用したい場合は、私自身が作成した収集プログラムを参照してください。
1、対象のWebページデータを取得します;
2. 関連コンテンツを傍受します。
3. データベースへの書き込み/HMTL ファイルの生成;
以下の手順に従って試してみてください!
ランディング ページ データを取得する
1. Web ページのアドレスと取得する形式を決定します。ここで使用する URL は次のとおりです:/index.html?pageconfig=catalog_byproducttype&intProductTypeID=1&strStartChar=A&intResultsPage=1&tr=59
このページは、ルールに従ってページ分割されています。つまり、ページを切り替えるには、ページ パラメーターを変更するだけでよいことがわかりました。
Web ページの形式は次のとおりです:/index.html?pageconfig=catalog_byproducttype&intProductTypeID=1&strStartChar=A&intResultsPage= NUMBER &tr=59
赤い部分は現在のページ番号に対応する値です。値を変更するだけです!
2. ページのコンテンツを取得する: 当然、PHP 関数を使用する必要があります。ここでは、両方の関数を使用できます:
file_get_contents() は、ファイル全体を文字列に読み取ります。 file_get_contents() がファイルを文字列に読み取る点を除いて、file() と同じです。 file_get_contents() 関数は、ファイルの内容を文字列に読み取る場合に推奨される方法です。オペレーティング システムでサポートされている場合は、パフォーマンスを向上させるためにメモリ マッピング テクノロジも使用されます。構文: file_get_contents( path , include_path , context , start , max_length )curl() 詳細については、公式 Web サイトのドキュメントを参照してください: http://cn.php.net/curl fopen() 関数は、ファイルまたは URL を開きます。オープンに失敗した場合、この関数は FALSE を返します。構文: fopen(filename, mode, include_path, context) もちろん、最初のものを使用します。実際、それらはすべて似ており、興味のある子供たちは他のものについて学ぶことができます。
コードは次のとおりです
コードをコピー
$oldcontent = file_get_contents(“http://www.abcam.cn/index.html?pageconfig=catalog_byproducttype&intProductTypeID=1&strStartChar=A&intResultsPage=2&tr=59”);
$oldcontent をエコー;
?>
PHP プログラムを実行すると、上記のコードで Web ページ全体を表示できます。元の Web ページは Jedi パスを使用しているため、表示される効果は元の Web ページとまったく同じになります。
次のステップはコンテンツを傍受することです! コンテンツを傍受する方法はたくさんあります。今日紹介する方法は比較的簡単です。
コードは次のとおりです
コードをコピー
$oldcontent = file_get_contents(“http://www.abcam.cn/index.html?pageconfig=catalog_byproducttype&intProductTypeID=1&strStartChar=A&intResultsPage=2&tr=59″);
$oldcontent;
$pfirst = ' p style=”font -size:12px”>コード ';
$plast = ‘ヤギポリクローナル’;
$b= strpos($oldcontent,$pfirst);
$c= strpos($oldcontent,$plast);
echo substr($oldcontent,$b,$c-1);
?>
出力は必要な結果です!
データベースへの書き込みとファイルへの書き込みは比較的簡単です!
コードは次のとおりです
コードをコピー
$oldcontent = file_get_contents(“index.html?pageconfig=catalog_byproducttype&intProductTypeID=1&strStartChar=A&intResultsPage=2&tr=59″);
$oldcontent;
$pfirst = ' p style=”font -size:12px”>コード ';
$plast = ‘ヤギポリクローナル’;
$b= strpos($oldcontent,$pfirst);
$c= strpos($oldcontent,$plast);
$a = substr($oldcontent,$b,$c-1);
$file = date('YmdHis').”.html”;
$fp = fopen($file,”w+”);
if(!is_writable($file)){
die(「ファイル「.$file.」に書き込めません」);
}
他に{
file_put_contents($file, $a);
「成功」をエコーします;
}
fclose($fp);
?>
OK、作業を続けます。今日のインターセプトはここで終了です。次回は正規表現の抽出内容について説明します
http://www.bkjia.com/PHPjc/629899.html
www.bkjia.com 本当 http://www.bkjia.com/PHPjc/629899.html 技術記事 PHP でデータを収集する最も一般的な方法は、curl 関数を使用することです。curl 関数は高性能でマルチスレッドであるため、必要に応じて、PHP 収集プログラムを紹介します。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
2024-10-22 09:46:29
2024-10-13 13:53:41
2024-10-12 12:15:51
2024-10-11 22:47:31
2024-10-11 19:36:51
2024-10-11 15:50:41
2024-10-11 15:07:41
2024-10-11 14:21:21
2024-10-11 12:59:11
2024-10-11 12:17:31