首頁  >  文章  >  後端開發  >  網易雲音樂評論爬取

網易雲音樂評論爬取

jacklove
jacklove原創
2018-06-11 23:42:122726瀏覽

# 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 MySQL 分頁類別

#兩個不用遞歸的樹形陣列建構子

HTML轉Excel,並實作列印,下載功能

#

以上是網易雲音樂評論爬取的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn