ホームページ  >  記事  >  バックエンド開発  >  file_get_contents を解析してブラウザヘッダー (user_agent) を模倣し、data_PHP チュートリアルを取得します。

file_get_contents を解析してブラウザヘッダー (user_agent) を模倣し、data_PHP チュートリアルを取得します。

WBOY
WBOYオリジナル
2016-07-21 15:03:14882ブラウズ

ユーザーエージェントとは
ユーザーエージェントは中国語でユーザーエージェント、または略してUAと呼ばれ、サーバーがオペレーティングシステムとバージョン、CPUの種類、ブラウザとバージョンを識別できるようにする特別な文字列ヘッダーです。顧客が使用するブラウジング サーバー レンダリング エンジン、ブラウザ言語、ブラウザ プラグインなど。
例えば、携帯電話からのアクセスとPCからのアクセスでは異なるページを表示するなど、異なるUAを判断して異なるWebサイトを表示することができます。
PHP が file_get_contents 関数を使用して Web サイトを収集すると、ブラウザーで表示できるものの、コンテンツが収集できない場合があります。
これは、デフォルトでは PHP の file_get_contents 関数が ua を送信しないため、User_agent に基づいて通常のブラウザー リクエストであるかどうかを判断する設定がサーバー上で行われたことが原因であると考えられます。
そのような Web サイトを収集したい場合は、PHP にブラウザをシミュレートさせて UA を送信させ、Web サイトを騙して通常のコンテンツを返させる必要があります。

実装は次のとおりです:
ini_set('user_agent','Mozilla/4.0 (互換性; MSIE 8.0; Windows NT 5.1; Trident/4.0; 4399Box.560; .NET4.0C; .NET4.0E)' );
これは IE8 環境をシミュレートする UA です。もちろん、別の環境に変更することもできます。たとえば、Firefox
は次のように読み取ることもできます:

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

$opts = array(
'http'=>array(
'method'=>" GET",
'header'=>"ホスト: zh.wikipedia.orgrn" .
"受け入れ言語: zh-cnrn" .
"ユーザーエージェント: Mozilla/4.0 (互換性; MSIE 8.0; Windows NT 5.1; Trident/4.0; 4399Box.560; .NET4.0C; .NET4.0E)" .
"受け入れる: *//*"
)

http://www.bkjia.com/PHPjc/327875.html

tru​​ehttp://www.bkjia.com/PHPjc/327875.html技術記事ユーザーエージェントとは何ですか? ユーザーエージェントは中国語でユーザーエージェント、略してUAと呼ばれ、サーバーが顧客が使用しているオペレーティングシステムとバージョン、CPUの種類、ブラウザを識別できるようにする特別な文字列ヘッダーです。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。