lvhanzhi

python3 爬取全名k歌

代码:

import re
import requests
import ssl
ssl._create_default_https_context=ssl._create_unverified_context
k=0
if __name__ == \'__main__\':
    url = \'https://kg.qq.com/node/personal?uid=649c9583262436\'
    params={
        \'uid\':\'649c9583262436\'
    }
    headers={
        \'user-agent\':\'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36\'
    }
    response=requests.get(url=url,headers=headers,params=params)
    p=\'<a href="(https://node.kg.qq.com/play?.+?g_f=personal)"\'
    new_url=re.findall(p,response.text)
    new_url = set(new_url)
    new_url = list(new_url)
    print(new_url)
    for i in new_url:
        new_p = \'"playurl":"(http:.+?sdtfrom=v1506.+?)"\'
        response2 = requests.get(url=i, headers=headers)
        music_url=re.findall(new_p, response2.text)[0]
        print(music_url)
        if music_url:
            music_url=music_url
            response3=requests.get(url=music_url,headers=headers)
            with open(\'%s.m4a\'%k,\'wb\')as f:
                f.write(response3.content)
            k+=1

效果图:

关于优化:

1.歌曲名字优化:用正则匹配歌曲名,并赋给歌曲

2.速度优化:开启多线程,实现并发,提高效率

3.查看更多优化:获取查更多的连接,下载剩下的歌曲

4.软件优化:做成软件,增加前端界面,输入连接就可以下载

分类:

技术点:

相关文章:

  • 2021-09-07
  • 2021-10-22
  • 2021-11-09
  • 2018-05-22
  • 2021-05-13
  • 2021-10-09
  • 2021-09-17
  • 2021-10-12
猜你喜欢
  • 2021-09-17
  • 2021-12-20
  • 2021-11-18
  • 2021-09-04
  • 2021-10-09
  • 2022-01-16
相关资源
相似解决方案