# coding=gbk import requests import json c='网易云爬虫实战一' print(c) music_url = 'https://music.163.com/#/song?id=28815250' id = music_url.split('=')[1] # print(id) url = 'https://music.163.com/weapi/v1/resource/comments/R_SO_4_%s?csrf_token=7e19029fe28aa3e09cfe87e89d2e4eeb' %(id) headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36', 'Referer': 'https://music.163.com/song?id=%s' %(id), 'Origin': 'https://music.163.com', } formdata = { 'params': 'AoF/ZXuccqvtaCMCPHecFGVPfrbtDj4JFPJsaZ3tYn9J+r0NcnKPhZdVECDz/jM+1CpA+ByvAO2J9d44B/MG97WhjmxWkfo4Tm++AfyBgK11NnSbKsuQ5bxJR6yE0MyFhU8sPq7wb9DiUPFKs2ulw0GxwU/il1NS/eLrq+bbYikK/cyne90S/yGs6ldxpbcNd1yQTuOL176aBZXTJEcGkfbxY+mLKCwScAcCK1s3STo=', 'encSecKey': '365b4c31a9c7e2ddc002e9c42942281d7e450e5048b57992146633181efe83c1e26acbc8d84b988d746370d788b6ae087547bace402565cca3ad59ccccf7566b07d364aa1d5b2bbe8ccf2bc33e0f03182206e29c66ae4ad6c18cb032d23f1793420ceda05e796401f170dbdb825c20356d27f07870598b2798f8d344807ad6f2', } response = requests.post(url, headers = headers, data = formdata) messages = json.loads(response.text) data_list=[] data={} for message in messages['hotComments']: data['nickname']=message['user']['nickname'] data['content']=message['content'] data_list.append(data) data={} #print(data_list) for i in data_list: c = ' '+i['nickname']+':'+i['content'] print('\n\n'+c.replace('\n',''))
#總結:
1、第一行的「# coding=gbk」表示的是可以在文字編輯器中輸入文字字串。
2、"id = music_url.split('=')[1]"中split()函數表示將元素分組,例中為「https://music.163.com /#/song?id=”,“28815250”
3、由requests模組取得的HTML文字需要用json.loads()方法轉換為Python可讀的文本,否則會報錯。在jupyter notebook中則不會出現這種情況。
4、replace()函數可以移除字串中的元素,例中將換行符號變成空。
最終顯示結果如下圖:
#本文介紹了網易雲音樂評論爬取的相關內容,請關注php中文網。
相關推薦:
#以上是網易雲音樂評論爬取的詳細內容。更多資訊請關注PHP中文網其他相關文章!