ゲーム業界の発展に伴い、Steam プラットフォームを通じてゲームを購入するゲーマーが増えています。世界最大の PC ゲーム配信プラットフォームである Steam は、豊富なゲーム機能とコミュニティ機能を提供し、世界中から多くのゲーム愛好家を魅了しています。 Steam ゲーム愛好家や Steam ゲーム情報を知りたい開発者向けに、この記事では PHP 言語を使用して Steam ゲーム情報をクロールする方法を紹介します。
1. Steam APIを理解する
Steamでは公式API(Application Program Interface、アプリケーションプログラミングインターフェース)が提供されており、開発者であれば公式APIを利用してゲーム情報を取得することができます。ただし、公式 API を使用するには最初に認証が必要であり、公式 API には多くの制限があります。たとえば、ゲームの価格、評価、推奨事項、その他の情報を取得するには、ユーザーが Steam にログインする必要があります。そこでこの記事では、PHPを使ってSteamのゲーム情報のWebデータをクロールする方法を紹介します。
2. Steam ゲーム ページのソース コードを取得する
PHP を使用して Steam ゲーム情報をクロールする前に、まず Steam ゲーム ページのソース コードを取得する方法を理解する必要があります。 Steam ゲームの詳細ページを開き、ブラウザで開発者ツールを開き、「ネットワーク」タブに切り替え、リクエスト タイプを「すべて」に設定して、ページを更新します。すべてのリクエスト レコードが表示されます。「store.steampowered.com」というリクエストがあり、これが必要なリクエストです。
カーソルをリクエストの下に移動し、右側の「ヘッダー」タブで「リクエスト URL」を見つけます。この URL はゲーム詳細ページの完全なアドレスです。アドレスをコピーして PHP に追加します。 code file_get_contents()
関数を使用して、ページのソース コードを取得します。
3. Steam ゲーム ページのソース コードを解析する
Steam ゲーム情報をクロールする次のステップは、Steam ゲーム ページのソース コードを解析することです。 PHP の DOMDocument クラスと DOMXPath クラスを使用して HTML ドキュメントを解析できます。まず、ダウンロードしたページのソース コードを DOMDocument クラスの loadHTML()
メソッドに渡して DOM オブジェクトを作成し、query()
メソッドを通じて要素をクエリする必要があります。 DOMXPath クラスの。
次は、Steam ゲームの名前とリリース日を解析できるサンプル コードです:
$url = "https://store.steampowered.com/app/105600/"; $html = file_get_contents($url); $doc = new DOMDocument(); $doc->loadHTML($html); $xpath = new DOMXPath($doc); $name = $xpath->query('//div[@class="apphub_AppName"]')->item(0)->nodeValue; $date = $xpath->query('//div[@class="date"]')->item(0)->nodeValue; echo "游戏名字:".$name." "; echo "发布日期:".$date." ";
上記のコードでは、XPath クエリ言語を使用して Steam 内の要素をクエリします。ゲームページ。このうち、「//@class=」パラメータはクエリする必要があるクラス名を指し、item()
メソッドは最初に一致する要素を取得するために使用され、nodeValue
属性は、要素のテキスト内容を取得するために使用されます。
4. Steam ゲームに関する詳細情報をクロールする
これまでの手順を基礎として、同じ方法を使用して Steam ゲームに関する他の情報を取得できるようになります。以下は、一般的な Steam ゲーム情報クエリ Xpath の一部です:
$price = $xpath->query('//div[@class="game_purchase_price"]')->item(0)->nodeValue;
$score = $xpath->query('//div[@class="user_reviews_summary_row"]')->item(0)->getAttribute("data-tooltip-text");
$developer = $xpath->query('//div[@id="developers_list"]//a')->item(0)->nodeValue; $publisher = $xpath->query('//div[@id="publishers_list"]//a')->item(0)->nodeValue;
$config = $xpath->query('//div[@class="sysreq_contents"]')->item(0)->nodeValue;
実際の使用では、ニーズに応じてクエリをカスタマイズできます。ただし、Steam Web サイトの HTML 構造は変更される可能性があるため、コードが正しく実行されるかどうかを確認してください。Web ページの構造が変更された場合は、クエリ メソッドを更新する必要があります。
5. Steam ゲーム情報の送信
Steam ゲーム情報のクロールが完了したら、この情報をデータベースまたはその他のデータ ストレージに送信できます。実際には、IP アドレスや検証コードなどの制限など、クローラー対策メカニズムが適用される可能性があります。そのため、PHP コードを作成するときは、Steam のクローラーに関する規約を遵守し、データ スクレイピング方法を合理的に使用するように注意してください。
結論
この記事では、PHP言語を使用してSteamのゲーム情報をクロールする基本的な方法を紹介します。 DOMDocument や DOMXPath などのテクノロジーを使用すると、ゲーム名、発行元、価格、評価、推奨構成などの有益な情報を Steam ゲーム ページから抽出できます。この記事がクローラー愛好家、Steam ゲーム開発者、Steam プレイヤーに役立つことを願っています。
以上がPHP を使用して Steam ゲーム情報をクロールするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。