tubumoxi1999
import requests
import csv
list_header = [\'歌名\',\'专辑\',\'播放时长\']
with open(\'1.csv\',\'a+\',encoding=\'gbk\',newline=\'\') as f:
    writer = csv.writer(f)
    writer.writerow(list_header)
headers = {
    \'origin\':\'https://y.qq.com\',

    # 请求来源

    \'referer\':\'https://y.qq.com/n/yqq/song/004Z8Ihr0JIu5s.html\',

    # 请求来源

    \'user-agent\':\'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36\',

    # 标记了请求从什么设备,什么浏览器上发出
}
url = \'https://c.y.qq.com/soso/fcgi-bin/client_search_cp\'
num= int(input(\'请输入爬取的页数:\'))


for i in range(0,num+1):
    params = {
            \'ct\': \'24\',
            \'qqmusic_ver\': \'1298\',
            \'new_json\': \'1\',
            \'remoteplace\': \'txt.yqq.song\',
            \'searchid\': \'64582426858626398\',
            \'t\': \'0\',
            \'aggr\': \'1\',
            \'cr\': \'1\',
            \'catZhida\': \'1\',
            \'lossless\': \'0\',
            \'flag_qc\': \'0\',
            \'p\': \'i\',
            \'n\': \'10\',
            \'w\': \'五月天\',
            \'g_tk_new_20200303\': \'5381\',
            \'g_tk\': \'5381\',
            \'loginUin\': \'0\',
            \'hostUin\': \'0\',
            \'format\': \'json\',
            \'inCharset\': \'utf8\',
            \'outCharset\': \'utf-8\',
            \'notice\': \'0\',
            \'platform\': \'yqq.json\',
            \'needNewCode\': \'0\'
    }
    res_music = requests.get(url=url,params=params,headers= headers)
    json_music = res_music.json()
    list_music = json_music[\'data\'][\'song\'][\'list\']
    for music in list_music:
        song_name = music[\'name\']
        print(\'歌名:\'+song_name)
        song_album = music[\'album\'][\'name\']
        print(\'专辑:\'+song_album)
        song_time = music[\'interval\']
        print(\'播放时长:\'+str(song_time))
        list1 = [song_name,song_album,str(song_time)]
        with open(\'1.csv\',\'a+\',encoding=\'gbk\',newline=\'\') as f:
            writer = csv.writer(f)
            writer.writerow(list1)

获取到的数据:

 

分类:

技术点:

相关文章: