ホームページ  >  記事  >  バックエンド開発  >  PHPを使ってLOLデータのリモート取得を実現する方法を教えます_PHPチュートリアル

PHPを使ってLOLデータのリモート取得を実現する方法を教えます_PHPチュートリアル

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

ウェブサイトは数日以内にオンラインになります。

最近、LOLデータの取得という小さな機能が完了しました

例: 数字をあげますが、この数字をランク付けしましたか?戦闘効率はどれくらいですか?勝率と総対局数データを取得

データはDuowanのWebサイトで確認できるので、必要な機能はリモートキャプチャです。

PHPを使ってLOLデータのリモート取得を実現する方法を教えます_PHPチュートリアル

この関数にはハイライトはなく、単なる単純な実装です。

いずれにせよ、JS はドメインを越えることはできません。その後、PHP を使用してドメインを越えるのは、file_get_content を使用するか、curl を使用するかは関係ありません。ビジネスプロセスを理解することが重要です。

PHPを使ってLOLデータのリモート取得を実現する方法を教えます_PHPチュートリアル

上の写真は実行業務のフローチャートです。プロセスが明確になると、コードも書きやすくなります

もちろん言いましたが、ここでは PHP がデータをキャプチャする方法に焦点を当てています。

ここでは、非常に優れた PHP クラス Simple_html_dom を紹介します (ドキュメントは Baidu から入手してください)

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

public function getData(){
$server = isset($_POST['gameserver'])?trim($_POST['gameserver']): NULL;
$ name = isset($_POST['gamename'])?trim($_POST['gamename']):NULL;
import("@.ORG.SimpleHtmlDom") //データキャプチャクラス
$url = "http://lolbox.duowan.com/playerDetail.php?serverName=".urlencode($server)."&playerName=".urlencode($name);
" $html = file_get_html($url);
" $dom = $html ->find('.fighting',0)->children(1);
$result['zdl'] =trip_tags($dom->innertext);
$doms = $html ->find( '.J_content', 0)-& gt;
// Echo $ html- & gt; Bleak $tempArray = explode(" ",trim($temp));
[] =トリム ($ 値);
$pwsl = $tempArr[ 14];
}else{
['pw'] = "0";
$result ['pwsl'] = "0";

上記のコードは、私の英語が CET-4 に合格したものの、まだ欠陥があるというバグを明らかにしています。
上記のクラスは非常に単純ですが、問題は Duowan クエリ ページのデータを分析する方法にあります。 firebugで見てみましょう。
書けば書くほど理解が深まります。もちろん、ランクの非表示スコアを確認したい場合は実行できますが、データを取得するには馬化騰の Web サイトにアクセスする必要があります。ここでは詳しく説明しません。アイデアだけを提供します。

http://www.bkjia.com/PHPjc/781410.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/781410.html技術記事ウェブサイトは数日以内にオンラインになります。 最近、LOL データの取得という小さな機能が完成しました。たとえば、番号をあげますが、この番号はランク付けされましたか?戦闘効率はどれくらいですか?勝ちます...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。