PHP で Web ページのコンテンツを取得する場合の注意事項
1. ネットワーク エラーが発生する可能性があり、あらゆるエラーが発生する可能性があります。たとえば、マシンがダウンしている、ネットワーク ケーブルが壊れている、ドメイン名が間違っている、ネットワークがタイムアウトする、ページが消える、Web サイトがジャンプする、サービスが禁止されている、ホストの負荷が十分でないなどです...
2. サーバーに制限が追加されました。一般的なブラウザのみにアクセスを許可します。
3. サーバーにホットリンク防止制限が追加されました。
4. 一部の Web サイトでは、ホットリンク防止の制限が追加されました。 HTTP リクエストの Accept-Encoding ヘッダー、またはヘッダーの有無。その部分の具体的なコンテンツは何ですか? とにかく、gzip 圧縮されたコンテンツを常に送信します
#5。URL リンクはあらゆる種類の奇妙なものには、漢字が含まれているものや、キャリッジ リターンやライン フィードが含まれているものもあります。6. 一部の Web サイトには HTTP ヘッダーに Content-Type があり、Web ページにはいくつかの Content-Type があります。さらにとんでもないことは、それぞれの Content-Type が異なることです。最もとんでもないことは、これらの Content-Type がテキスト内で使用できないことです。Content-Type により文字化けが発生します。7. ネットワーク リンクは次のとおりです。非常に遅いです。数千ページの分析にかかる時間を掛け合わせると、おいしい食事をとることをお勧めしますGet PHP Web page content メソッド
Method 1. file_get_contents メソッドを使用して、
$url = "http://news.sina.com.cn/c/nd/2016-10-23/doc-ifxwztru6951143.shtml"; $html = file_get_contents($url); //如果出现中文乱码使用下面代码 //$getcontent = iconv("gb2312", "utf-8",$html); echo "<textarea style='width:800px;height:600px;'>".$html."</textarea>";
$url = "http://news.sina.com.cn/c/nd/2016-10-23/doc-ifxwztru6951143.shtml";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$html = curl_exec($ch);
curl_close($ch);
echo "<textarea style='width:800px;height:600px;'>".$html."</textarea>";
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
<head><title>Object moved</title></head>
<body><h1>Object Moved</h1>This object may be found <a href="some link." rel="external nofoll
以上がphpでWebコンテンツを取得するときに注意すべきことは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。