Python3 は NetEase Cloud Music の人気コメント分析をキャプチャするクローラーを実装します (写真)
この記事では、主に NetEase Cloud 音楽のホットレビューをキャプチャするための Python3 実用的なクローラーに関する関連情報を紹介します。この記事では、学習や仕事に役立つ特定の学習価値があります。以下のエディターと一緒に学習してください。
はじめに
私はPythonクローラーを始めたばかりで、半月ほどPythonを書いていなかったため、ほとんど忘れていました。そこで、スキルを練習するために簡単なクローラーを作成するつもりでした。NetEase Cloud Music の最大の特徴は、正確な曲の推奨と独自のユーザー レビューであると感じたので、NetEase Cloud Music の人気の曲の熱いレビューを取得するためにこのメソッドを書きました。爬虫類のリスト。私もまだクロールを始めたばかりです。ご意見やご質問がございましたら、お気軽にお問い合わせください。一緒に進歩していきましょう。
これ以上ナンセンスはありません~詳細な紹介を見てみましょう。
私たちの目標は、NetEase Cloud の人気曲ランキングのすべての曲の人気コメントをクロールすることです。
これにより、クロールに必要な作業負荷が軽減されるだけでなく、高品質のコメントも保存できます。
実装分析
まず、図に示すように、NetEase Cloud Webバージョンを開きます:
ランキングリストをクリックし、次にクラウドミュージックのホットソングリストをクリックします。左、写真に示すように:
まず、ランダムに曲を開いて、指定した曲の人気のある曲のレビューを取得する方法を調べてみましょう。写真に示すように、最近気に入った曲を選択しました。例:
入力すると、このページのすぐ下に曲のレビューが表示されます。次に、これらのコメントを取得する方法を見つける必要があります。
次に、Web コンソールを開き (Chrome の開発者ツールを開きます。他のブラウザでも同様であるはずです)、図に示すように、Chrome の下で F12 を押します:
[ネットワーク] を選択し、F5 を押して更新します。更新後に取得されたデータは次のとおりです。
ブラウザが多くの情報を送信していることがわかります。それではどれが必要ですか?ここでは、ステータス コードによってサーバー リクエストのステータスを示すことができます。ステータス コードは、リクエストが正常であることを意味する 200 と、リクエストが異常であることを意味する 304 です (さまざまな種類があります)。ステータス コードについて詳しく知りたい場合は、自分で検索してください。ここでは 304 の具体的な意味については説明しません。したがって、通常はステータス コード 200 のリクエストのみを確認する必要があります。また、右側の列のプレビューを通じて、サーバーがどのような情報を返すかを大まかに観察する (または応答を表示する) ことができます。これら 2 つの方法を組み合わせることで、分析したいリクエストをすぐに見つけることができます。検索を繰り返した結果、画像に示すように、最終的に曲レビューを含むリクエストを見つけました:
CSDN ではスクリーンショットがあまり明確ではないかもしれませんが、R_SO_4_489998494?csrf_token=
という名前の POST リクエストでこの曲を含む曲レビューを見つけました。 。より明確に確認できるように、このブロックのスクリーンショットを撮りましょう:
リクエストの基本情報:
リクエストのヘッダー:
リクエスト内のフォームデータ:
この曲の曲レビューを含むリクエスト URL は http://music.163.com/weapi/v1/resource/comments/R_SO_4_489998494?csrf_token= であることがわかります。いくつかの曲を変更した後、このリクエストはの最初の部分は同じですが、R_SO_4_ の直後の数字列が異なります。各曲には指定された ID があり、R_SO_4_ に続くのは曲の ID であると推測できます。
送信されたフォーム データをもう一度見てみましょう。params と encSecKey という名前の 2 つのデータをフォームに入力する必要があることがわかります。以下は大きな文字列です。いくつかの曲を変更すると、各曲の params と encSecKey が異なることがわかります。したがって、これら 2 つのデータは特定のアルゴリズムによって暗号化されている可能性があります。
サーバーから返されるコメント関連データは json 形式であり、非常に豊富な情報 (コメンテーターに関する情報、コメント日付、いいねの数、コメントの内容など) が含まれており、その中で hotComments が最も注目されています。写真に示すように、合計 15 個のコメントがあります:
この時点で、方向は決定されました。つまり、params と の 2 つのパラメーター値を決定するだけです。 encSecKey。しかし、これら 2 つのパラメータは特定のアルゴリズムを通じて暗号化されています。どうすればよいでしょうか? http://music.163.com/weapi/v1/resource/comments/R_SO_4_489998494?csrf_token= R_SO_4_ の後の数字はこの曲の ID 値で、別の曲の場合は param と encSecKey の値です。 A などの曲のこれら 2 つのパラメータ値を曲 B に渡す場合、同じページ数では、このパラメータは普遍的です。つまり、曲の最初のページの 2 つのパラメータ値です。 A はソング B に渡されます。他のソングの 2 つのパラメーターについては、対応するソングの最初のページでコメントを取得できます。2 ページ目、3 ページ目などについても同様です。
実際、最初のページで人気のある 15 件のコメントを取得する必要があるだけなので、曲を見つけて、最初のページのリクエストにある params と encSecKey の 2 つのパラメーター値をコピーするだけです。曲をダウンロードすればすぐに使用できます。
これら 2 つのパラメータを復号化する方法については、実際には強力な Zhihu に答えがあります。興味のある方はご覧ください (https://www.zhihu.com/question/36081767)。ここにあります。xixi さん、遅延メソッドを使用して要件を完了するだけです。
これまで、NetEase Cloud Music の人気コメントを取得する方法を分析してきました。次に、クラウド ミュージックの人気曲リストのすべての曲の情報を取得する方法を分析してみましょう。
クラウドミュージックのホットソングリスト内のすべての曲の曲名と対応するID値を取得する必要があります。
上記の分析手順と同様に、図に示すように、まずホットソングリストの URL を入力します:
図に示すように、F12 を押して WEB ワークベンチに入ります:
toplist というファイル内にあります。id=3778678 の GET リクエストで、このリストのすべての曲情報が見つかりました。
リクエストに対応する情報は図に示すとおりです:
図に示すように、リクエストによって返される結果をプレビューしてみましょう:
行内に曲情報を含むコードが見つかりました図に示すように、コードの 524 は次のとおりです。
したがって、リクエストのコードから情報を含むコードをフィルタリングするだけで済みます。
ここではデータのフィルタリングに正規表現を使用します。
特徴を観察することで、2 つの正規表現フィルターを通じて必要な曲情報を抽出できます。
最初の正規表現では、リクエストによって返されたすべてのコードからコードの 525 行目を抽出しました。
最初の正規表現は次のとおりです:
<ul class="f-hide"> <li> <a href="/song\?id=\d*?" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >.*</a> </li> </ul>
2 番目の正規表現では、行 524 で必要な曲情報を抽出します。曲のタイトルと ID が必要で、対応する正規表現は次のとおりです:
Get曲のタイトル:
<li><a href="/song\?id=\d*?" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >(.*?)</a></li>
曲 ID を取得:
<li><a href="/song\?id=(\d*?)" rel="external nofollow" rel="external nofollow" >.*?</a></li>
この時点で、プロセス全体を分析しました。具体的な詳細を確認するためにコードに行きましょう~~
コードは次のとおりです:
コードを実行した結果は次のとおりです:
Web ページ上の曲「If I Love You」の曲レビューと保存した曲レビューを比較します:
情報は正しいです~
概要
以上がPython3 は NetEase Cloud Music の人気コメント分析をキャプチャするクローラーを実装します (写真)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









2月に国内ゲーム版がリリースされて以来、多くのプレイヤーの好奇心を集めているNetEaseのミステリアスなシューティングゲーム「オペレーション・アポカリプス」。皆さんご存知のとおり、NetEase も初期にはシューティングゲームをいくつか持っていましたが、「デイ・アフター・トゥモロー」と「荒野行動」を除けば、プレイできるゲームはそれほど多くないようです。近年、NetEase が発表した作品は勢いを増し、多くのニッチな分野で大きな成果を上げています。これまで公開されたことのなかった「Operation Apocalypse」がNetEaseの新年最初のショットに据えられたという事実は眉をひそめるのに十分ですが、これはNetEaseがシューティングトラックに攻撃を開始するという合図なのでしょうか?プレイヤーは新しいモバイル シューティング ゲームを心待ちにしています。3 月 13 日、NetEase が開発したこの 5V5 マルチヒーロー スキル シューティング モバイル ゲーム「オペレーション アポカリプス」がついにその謎を明らかにし、最初のライブ デモを正式にリリースしました。

北京時間の2024年3月27日、NetEase GamesとMarvel Gamesは新作ゲーム、スーパーヒーローPVPチームシューティングゲーム「Marvel Rivals」を正式発表した。プレイヤーは、スーパーヒーローやスーパーヴィランの豊富で多様なラインナップからお気に入りのキャラクターを選択してオールスターチームを結成し、独自のスーパーパワーを使ってマーベルマルチバースのさまざまな壊れやすいマップでエキサイティングな戦いに参加できます。 「私たちは『マーベル コンフロンテーション』を世界中のプレイヤーにお届けできることに非常に興奮しています。私たちは常にマーベル ユニバースとそのキャラクターを愛しており、このゲームの開発に興奮しています。」 「マーベル コンテスト」のメイン クリエイティブ チームは次のように述べています。これはまさに私たちが作りたいと夢見ていたゲームであり、それを夢から現実に変えることができたことを非常に誇りに思っています。」

NetEaseの「Marvel Super War」は、2024年6月17日15時に運営を終了し、ゲームサーバーを閉鎖すると発表した。現在、全プラットフォームのダウンロード入り口は閉鎖されており、ゲームのリチャージや新規ユーザー登録も停止されている。マーベル初の MOBA モバイル ゲームであるこのゲームは、スーパーヒーローの戦闘特性を忠実に表現し、マーベル ユニバースの壮大な世界観を再現しています。ゲームでは、アベンジャーズ、X-メン、ファンタスティック フォー、そして多くのスーパーヒーローやスーパーヴィランたちと並行世界に集まり、アイアンマン、キャプテン アメリカ、スパイダーマン、ロキ、サノス、デッドプールと競争することができます。 60 を超えるマーベルの古典的なキャラクターが一緒に戦えます!

最近、Nishuihan モバイル ゲームは、プレーヤーが「入力するだけで大ヒット作を生み出す」ことができる新しい AI ビデオ生成ツールを正式にリリースしました。公式の紹介によると、機能は二水飯ゲームそのものをベースに実装されており、AIが大きく関わっているとのこと。機材や俳優、特殊効果などは一切必要なく、キャラクターの画像や動作、セリフを入力するだけで、対応するコンテンツをAIによってゲーム内でリアルタイムに生成し、撮影することができます。同時に、プレイヤーはキャラクターの服装、メイク、髪型、性格、声などの詳細を調整することができます。この機能は、写真・動画のアップロードやAIによるモーションキャプチャー、ゲーム内で「ゲーム内にはない」動きや表現をリアルタイムに生成することにも対応しています。関係者は、この機能には「創造的な空間を無限に、創造的な閾値を限界に近づける」というSoraと同じビジョンがあると述べています。

NetEase と Microsoft Blizzard は、Blizzard の全国サーバーの復帰を正式に発表しました。NetEase も本社ビルの下で祝賀式典を開催しました。現場も非常に興奮していました。一緒に現場に行きましょう!このシーンは早朝にセットアップされ、World of Warcraft、Hearthstone、Diablo 3、Heroes of the Storm、Overwatch、StarCraft 2 などを含むすべての Blizzard のゲームがリストされています。Blizzard と NetEase Heroes からの公式発表に注目してください。 「Heroes of the Storm」については言及されていませんが、このゲームのサイトで見られるポスターはありません。そのため、Heroes of the Storm が好きなプレイヤーは心配する必要はありません。Blizzard のファミリー全員が戻ってきます。 World of Warcraft にも特別な注意を払う必要があります。表示されているポスターは World of Warcraft 11.0 War for the Center of the Earth のものです。明らかに、メイソンが個人的に剣をコピーしたこの古典的なバージョンは、今夏中国サーバーでプレイされる予定です。

NetEase Master APP はゲーマーのためのソーシャル プラットフォームです。ユーザーはここでゲームに関する相談を受けることができます。多くのユーザーは NetEase Master がログアウト後に再登録できるかどうか知りたいと考えています。NetEase Master はログアウト後に再登録できます。 NetEase Master はログアウト後に再登録できますか? 回答: はい。 1. NetEase Master はログアウト後に再登録できます。 2. ただし、この番号を選択して登録するには、少なくとも 1 週間は登録する必要があります。 3. アカウントの指定はできず、以前のデータは消去されます。 4. ユーザーがログアウトすると、以前の情報と関連する残高はすべて消去されます。関連記事: NetEase マスターはバインドされた携帯電話番号をどのように変更しますか?

最近、Tencent Interactive Entertainment Recruitment が採用情報を発表し、Photon H Studio がコンテンツ豊富な AAA レベルのオープンワールド RPG プロジェクトの開発に取り組んでいることが示されました。人気の募集職種は、UE5 エンジニア、バックエンド、レベル デザイン、アクション シーン デザイン、キャラクター モデリング、特殊効果、配信などの複数の分野をカバーしています。これらの職種の目標勤務地は、NetEase の本社がある杭州です。

World of Warcraft には現在 4 つのバージョンがあり、国内サーバーは 1 年以上閉鎖されています。各バージョンの現状を整理してみましょう。 1. 公式サーバー バージョン 10.0 の終わり、全国サーバーが閉鎖される前に、バージョン 10.0 が開始されました。その後、バージョン 10.27 があり、エイジ オブ ドラゴン拡張パックは終了します。 。バージョン 10.0 は海外サーバーで好評を博し、Blizzard の人気がいくらか回復しましたが、バージョン 10.0 のゲームの核心は依然として大きな秘密と襲撃が主であり、PVP プレイヤーの数は非常に多くなっています。小さい。公式サーバーバージョンの継続的なアップデートにより、プレイヤーのゲーム傾向も PVE や PVP からコレクションへと変化しました。
