[1.プロジェクトの背景]
昨今、音楽鑑賞ソフトはいろいろな料金がかかるので、聴けるようにダウンロードする必要があります。ダウンロードすると、曲も有料になっていることに驚かれることでしょう。これまで売春婦が好きだった編集者はとても悲しくなります。それで、編集者は一生懸命考えて、ついに謎を発見させてくれました。見てみましょう。
[2.プロジェクトの準備]
1.編集者:崇高なテキスト3
2.ソフトウェア:360ブラウザ
[3.プロジェクトの目標]
好きな音楽をダウンロードしてください。
[4.プロジェクトの実現]
1.クゴウミュージックの公式サイトを開く
KugouMusicの公式ウェブサイトを360ブラウザで開きます。
私のお気に入りの場所でもある、とてもさわやかな絵画のスタイルを見ることができます。
2.要素を確認し、リクエストを分析します
ネットワークを開き、リクエストを分析すると、次のことがわかります。
上の図からわかるように、これはリクエストのパラメータであるため、Requestsモジュールを使用してリクエストを開始できます。
3.リクエストをシミュレートします
Webページから、そのアドレスは次のとおりであることがわかりました。
https://www.kugou.com/yy/html/search.html#searchType=song&searchKeyWord=%E4%B8%8D%E8%B0%93%E4%BE%A0
私たちにとって本当に役立つのは、SearchKeyWordパラメータの後の値だけであることがわかります。以前の検索タイプはデフォルトで入力できるため、次のように実行できます。
import requests
headers={
'accept': '*/*',
'accept-encoding':'gzip, deflate, br',
'accept-language': 'zh-CN,zh;q=0.9',
'cookie': 'kg_mid=ebb2de813317a791bcf7b7d3131880c4; UM_distinctid=1722ba8b22632d-07ac0227c507a7-4e4c0f20-1fa400-1722ba8b2284a1; kg_dfid=0Q0BEI47P4zf0mHYzV0SYbou; kg_dfid_collect=d41d8cd98f00b204e9800998ecf8427e; Hm_lvt_aedee6983d4cfc62f509129360d6bb3d=1590041687,1590280210,1590367138,1590367386; Hm_lpvt_aedee6983d4cfc62f509129360d6bb3d=1590367431',
'referer': 'https://www.kugou.com/yy/html/search.html',
'sec-fetch-mode': 'no-cors',
'sec-fetch-site': 'same-site',
'user-agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'
}
aa=input('请输入歌名:')
data={
'callback': 'jQuery112408716317197794392_1590368232677',
'keyword':aa,
'page': '1',
'pagesize':'30',
'userid':'-1',
'clientver': '',
'platform': 'WebFilter',
'tag': 'em',
'filter': '2',
'iscorrection': '1',
'privilege_filter': '0',
'_': '1590368232679',
}
requests.get('https://www.kugou.com/yy/html/search.html',params=data,timeout=4)
このようにして、シミュレーション要求が実現されます。検証してみましょう。
上記とまったく同じアドレスが正常に出力されたことがわかります。
4.音楽ファイルのリストを取得します
rep=requests.get('https://www.kugou.com/yy/html/search.html',params=data,timeout=5)
print(rep.url)
res=requests.get(rep.url,timeout=4)
print(res.text)
リクエストアドレスを正しく入力したところ、内容が期待と一致していないことがわかりましたが、リクエストされたアドレスのバッチは正しいものでした。
私はそれが結果だと思った:
実結果:
大きなギャップがあり、Jsonでは入手できないことがわかります。フォーマットが間違っており、QQ音楽より難しいと思われるJsonではないことを示しています。しかし、今日ダウンロードするのはオーディオファイルなので、今はスキップしてそのままにしておきます。
5.オーディオファイルをダウンロードします
検索後にポップアップするリストから元の曲を選択し、入力して聞いてください。
最初の曲を選び、このように開き、ショーの操作を開始し、ネットワークを開きます。
接尾辞Mp3を入力し、対応するリクエストを見つけて、そのリクエスト結果を開くと、Jsonの結果が表示されます。
Jsonの結果をコンソールに貼り付けると、Mp3に関する結果のセクションがあることがわかりますが、ドット干渉シンボルを追加して、それを抽出しました。
だから、クゴウミュージックの曲をダウンロードすることができます。
【V.プロジェクト概要】
1.実際、KugouMusicはQQMusicとは異なります。KugouMusicのダウンロードリンクの方がキャプチャに適しています。再生インターフェイスで直接キャプチャできます。
このインターフェイスのリクエストをシミュレートすると、すべてが完了します。
2. QQ Musicの買収については、以前に発行された一連の記事を参照してください。
3.あなたがこの記事のソースコードが必要な場合は、次の方法でそれを得ることが可能に返信する4つの単語「kugouの曲で」背景。
Python Webクローラーとデータマイニングについて詳しく知りたい場合は、専門のWebサイト(http://pdcfighting.com/)にアクセスしてください。