ホームページ  >  記事  >  バックエンド開発  >  PHP は HTTPS コンテンツのクロールを実装します。PHP クロール https_PHP チュートリアル

PHP は HTTPS コンテンツのクロールを実装します。PHP クロール https_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:12:291125ブラウズ

PHP は HTTPS コンテンツのキャプチャを実装し、PHP は https

をキャプチャします

最近、Hacker News API を調査中に HTTPS の問題に遭遇しました。すべての Hacker News API は、通常の HTTP プロトコルとは異なる暗号化された HTTPS プロトコルを通じてアクセスされるため、API で提供されるデータを取得するために PHP の関数 file_get_contents() を使用すると、使用されるコードは次のとおりです:

リーリー

上記のコードを実行すると、次のエラー メッセージが表示されます:

リーリー

以下はスクリーンショットです:

php https error

このエラーはなぜ発生しますか?

インターネットで検索したところ、多くの人がこのエラーに遭遇していることがわかりました。これは、私のローカル マシンで有効なパラメータが存在しないためです。先頭のセミコロンを削除します。次のスクリプトを使用して、PHP 環境の構成を確認できます: /apache/bin/php.ini 里的 ;extension=php_openssl.dll リーリー

上記のスクリプト スニペットを実行すると、私のマシンでの結果は次のようになります:

リーリー

代替案

エラーを見つけて修正するのは非常に簡単です。難しいのは、エラーを見つけた後は修正できないことです。当初はこのスクリプト メソッドをリモート ホストに配置したかったのですが、リモート ホストの PHP 構成を変更できなかったので、このソリューションは使用できませんでしたが、ツリーにぶら下がっているわけにはいきません。この道はダメだ、他に方法はないのか?

PHP でコンテンツをキャプチャするためによく使用するもう 1 つの関数は、curl です。これは

よりも強力で、多くのオプションのパラメーターを提供します。 HTTPS コンテンツへのアクセスの問題については、使用する必要がある CURL 設定パラメータは次のとおりです: curl ,它比 file_get_contents() 更强大,提供了很多的可选参数。对于访问 HTTPS 内容的问题,我们需要使用的 CURL リーリー

SSL セキュリティ検証を無視/スキップしていることが意味的にわかります。これは良いアイデアではないかもしれませんが、通常のシナリオではこれで十分です。

以下は、HTTPS コンテンツにアクセスできる

によってカプセル化された関数です: Curl リーリー

上記は、PHP で https コンテンツを取得するプロセス全体です。これは、同じプロジェクトのニーズを持つ友人にお勧めします。

http://www.bkjia.com/PHPjc/920621.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/920621.html技術記事 PHP は HTTPS コンテンツのクロールを実装し、PHP は https をクロールします。 最近、Hacker News API を勉強しているときに HTTPS の問題に遭遇しました。すべての Hacker News API は暗号化された HTTPS プロトコル経由でアクセスされるため、以下に従ってください...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。