ホームページ  >  記事  >  バックエンド開発  >  PHP ページのキャプチャとコード分析のチュートリアル

PHP ページのキャプチャとコード分析のチュートリアル

WBOY
WBOYオリジナル
2016-06-13 13:14:11774ブラウズ

PHPページキャプチャとコード解析解説
PHP ページ キャプチャとコード分析の説明 この記事の主な内容について簡単に説明します。

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://www. surfphpseo.com';
$lines_array=implode('',$lines_array);
echo htmlspecialchars($lines_string); >

2. file_get_contents() 関数
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); htmlspecialchars ($lines_string);
?>


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

次のようにコードをコピーします。 :
$url='http://t.qq.com';
$handle=fopen($url,"rb");
$lines_string="" ;
do{
$data=fread($handle,1024);
if(strlen($data)==0){break;}
$lines_string.=$data; >} while(true);
echo htmlspecialchars($lines_string);


4.カールを使用する場合 カールをオンにします。方法: Windows で php.ini を変更し、extension=php_curl.dll の前のセミコロンを削除し、ssleay32.dll と libeay32.dll を C:WINDOWSsystem32 にコピーします。Linux では、curl 拡張機能をインストールします。
次のようにコードをコピーします。
$url='http://t.qq.com'
$ch=curl_init(); 5 ;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); ( $ch);
curl_close($ch);
echo htmlspecialchars($lines_string)

5.ソケット モードが正しく実行できるかどうかは、サーバーの設定にも関係します。具体的には、phpinfo を使用して、サーバーでどの通信プロトコルが有効になっているかを確認できます。たとえば、私のローカルの php ソケットでは http しか使用できません。 udp を使用してテストします。
次のようにコードをコピーします。
$fp = fsockopen("udp://127.0.0.1", 13, $errno, $errstr);
if (!$ fp ) {
echo "エラー: $errno - $errstr
n";
} else {
fwrite($fp, "n"); , 26);
fclose($fp);
}
?>


インターネット上にはさらに多くのプラグインがあるはずです、スヌーピーのプラグインはオンラインで見つかりました。興味があれば調べてください。

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

1. 正規表現:

次のようにコードをコピーします:
$url='http ://t.qq.com';
$lines_string=file_get_contents($url);
eregi('(.*)',$lines_string,$title);
echo htmlspecialchars($title[0]);
?>


2. PHP DOMDocument() オブジェクト
リモート HTML または XML に構文エラーがある場合, php will dom を解析するとエラーが報告されます。

次のようにコードをコピーします。
$url='http://www.136web.cn';
$html=new DOMDocument(); > $html->loadHTMLFile($url);
$title=$html->getElementsByTagName('title');
echo $title->item(0)->nodeValue; > ?>


3. プラグイン
この記事では、PHP Simple HTML DOM Parser を例として簡単に説明します。 dom を操作するには、jQuery を使用して dom を操作するのと同じくらい簡単です。
次のようにコードをコピーします。
$url='http://t.qq.com'
include_once('../simplehtmldom/simple_html_dom.php') ;
$html=file_get_html($url);
$title=$html->find('title');
echo $title[0]->plaintext; ;



詳細なソース参照: http://www.surfphpseo.com

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