ホームページ > php教程 > php手册 > PHP ページのキャプチャとコード分析を推奨

PHP ページのキャプチャとコード分析を推奨

WBOY
リリース: 2016-06-13 12:14:49
オリジナル
970 人が閲覧しました

データを直接出力することはできません。多くの場合、コンテンツを抽出して、よりわかりやすい方法で表示するためにフォーマットする必要があります。
この記事の主な内容について簡単に説明します。

1. PHP でページをクロールする主な方法:

1. file_get_contents( ) 関数
3. fopen()->fread()->fclose() モード
5. fsockopen() 関数ソケット モード
6. (例: http://sourceforge.net/projects/snoopy/)

2. PHP が HTML または XML コードを解析する主な方法:

1. 正規表現
2. PHP DOMDocument オブジェクト
3. プラグイン (例: PHP Simple HTML DOM Parser)

上記の内容をすでによく知っている場合は、次の内容を渡すことができます...

PHP クロール ページ

1. file() 関数


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

$url='http://t.qq.com';
$lines_array=file($url);
$lines_string=implode('',$lines_array) );
echo htmlspecialchars($lines_string );
?>



2. file_get_contents と fopen を使用して、allow_url_fopen を有効にします。方法: php.ini を編集し、allow_url_fopen = On に設定します。allow_url_fopen がオフの場合、fopen も file_get_contents もリモート ファイルを開くことができません。


コードをコピー

コードは次のとおりです: $url='http:// t.qq .com';

$lines_string=file_get_contents($url);



3. ()- >fread()->fclose() モード



コードをコピー

コードは次のとおりです:

$url='http://t.qq.com'; $handle=fopen($url,"rb");

do{

$data=fread($handle,1024);
if(strlen($data)==0){break;}
$lines_string.=$data; }while(true);
echo htmlspecialchars($lines_string);



4. curl を使用するには、curl を開くためのスペースが必要です。方法: Windows で php.ini を変更し、extension=php_curl.dll の前のセミコロンを削除し、ssleay32.dll と libeay32.dll を C:WINDOWSsystem32 にコピーします。Linux では、curl 拡張機能をインストールします。



コードをコピー

コードは次のとおりです:



$url='http:// t.qq .com';
$ch=curl_init();

curl_setopt($ch, CURLOPT_URL, $url); ); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $lines_string=curl_exec($ch); echo htmlspecialchars($lines_string); ?>


5. fsockopen() 関数ソケットモード
ソケットモードが正しく実行できるかどうかは、どの通信プロトコルが有効になっているかも確認できます。たとえば、ローカルの php ソケットでは http が有効になっていないため、テストには udp しか使用できません。



コードをコピー

コードは次のとおりです。


$fp = fsockopen("udp: //127.0 .0.1", 13, $errno, $errstr);

if (!$fp) {
echo "エラー: $errno - $errstr
n";
} else {
fwrite($fp, "n");
fclose($fp);

? 🎜> 6. プラグイン スヌーピーのプラグインはインターネット上にあるので、興味があれば調べてみてください。

PHP は XML (html) を解析します


1. 正規表現:




コードをコピーします

コードは次のとおりです


$url='http://t.qq.com'
$lines_string=file_get_contents($url); '(.*)',$lines_string,$title);
echo htmlspecialchars($title[0]);



2. PHP DOMDocument() オブジェクト
リモート HTML または XML に構文エラーがある場合、PHP は dom の解析時にエラーを報告します。

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


$url='http :// www.136web.cn';
$html=new DOMDocument();
$html->loadHTMLFile($url); ');
echo $title->item(0)->nodeValue;



3. プラグイン
この記事では、PHP Simple HTML DOM Parser を例として簡単に説明します。simple_html_dom の構文は、jQuery を使用するのと同じくらい簡単に PHP を操作できます。 domを操作するためのjQuery。

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


$url='http:// t.qq .com';
include_once('../simplehtmldom/simple_html_dom.php');
$title=$html->find(' title') ;
echo $title[0]->plaintext;


もちろん、中国人は創造的であり、外国人が先を行く傾向があります。しかし、中国人はそれを使いこなすのが得意で、リモートクローリングやPHPの分析など、本来はデータ統合を容易にすることを目的とした機能を、外国人が思いつかないような機能を思いつくことがよくあります。しかし、中国人はこれを非常に好むため、価値のあるコンテンツを自分たちで作成するのではなく、他の人の Web サイトのコンテンツをクロールして自分のものにすることに依存しているコレクション サイトが多数あります。 Baidu に「php small」というキーワードを入力すると、候補リストの最初に「php thief Program」が表示されます。次に同じキーワードを Google に入力しても、何も言えず笑ってしまいます。
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート