ホームページ >バックエンド開発 >PHPチュートリアル >ページをクロールする PHP CURL のいくつかの方法の紹介_PHP チュートリアル
Curl は主にデータをキャプチャします。もちろん、fsockopen、file_get_contents などの他のメソッドを使用してデータをキャプチャすることもできます。ただし、ページ アクセス制御が行われているページやログイン後のページをキャプチャする場合は、より困難になります。
PHPホームページを取得してファイルに入れることです。
例 1. PHP の CURL モジュールを使用して PHP ホームページを取得します
コードは次のとおりです | コードをコピーします |
$ch =curl_init(); curl_setopt($ch, CURLOPT_URL, "http://localhost/mytest/phpinfo.php"); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // この行をコメントアウトすると、直接出力されます $result=curl_exec($ch); curl_close($ch); |
2、プロキシを使用してクロールします
なぜクロールにプロキシを使用するのでしょうか? Google を例に挙げます。Google のデータを短期間に頻繁に取得すると、データを取得できなくなります。 Google が IP アドレスを制限している場合は、プロキシを変更して再度クロールできます。
コードは次のとおりです | コードをコピー |
$ch =curl_init(); curl_setopt($ch, CURLOPT_URL, "http://www.hzhuti.com" ); curl_setopt($ch、CURLOPT_HEADER、false); curl_setopt($ch、CURLOPT_RETURNTRANSFER、1); curl_setopt($ch、CURLOPT_HTTPPROXYTUNNEL、TRUE); curl_setopt($ch、CURLOPT_PROXY、125.21.23.6: 8080); // url_setopt($ch, CURLOPT_PROXYUSERPWD, 'user:password'); パスワードが必要な場合は、これを追加します $result=curl_exec($ch); curl_close($ch); ?> |
3、投稿 データを取得した後、データの送信については別途説明します。curl を使用する場合、データのやり取りが頻繁に発生するため、データの送信の方が重要です。
コードをコピー | |||||||||||||||||||
コードは次のとおりです | コードをコピーします |
コピーして印刷して表示しますか? | 1は、httpd.confまたはhttpd-vhosts.confを変更することで構成できます
コードは次のとおりです
コードをコピーします
listen 10004 | NameVirtualHost *:10004|
ServerName *:10004 BandwidthModule On AuthName "access test" 2、.htaccess ファイルを使用して制御できます | test のルート ディレクトリに .htaccess ファイルを作成します
コードは次のとおりですフォローします
コードをコピーします
[zhangy@BlackGhost test]$ vi .htaccess //ファイルを開き、権限コンテンツを追加します | [zhangy@BlackGhost test]$ cat .htaccess .htaccess の内容|||||||||
AuthUserFile /home/zhangy/www/test/access Require valid-user 3,不用密码文件,也可以进行访问控制
curl相关函数列表: curl_init — 初始化一个CURL会话 例 1. 初始化一个新的CURL会话,且取回一个网页
|