实现逻辑: 打开chrome浏览器–>F12查看网页源码–>刷新网页查看所要信息是否存于html 中—>是–requests请求和BeautifulSoup分析.否–>找到xhr,刷新页面–>找到相应json请求—>requests请求网站->json提取数据

#实现代码所需模块: requests, csv

代码:

import requests

import csv

#设定初始csv文件

file =open("./qq_music.csv",“w”,newline="",encoding=“utf-8”)

writer =csv.writer(file)

writer.writerow([“歌手名”,“歌曲名”,“播放时长(分钟)”,“播放链接”])

def crawl():

name =input("请输入你想要查的歌手名")

#查询歌曲页数

try:

page =int(input("请输入想要查询的页数"))

except Exception as ret:

print("请输入数字")

else:

#查询歌曲数目

number =input("请输入每页想要查取的数目")

url ="https://c.y.qq.com/soso/fcgi-bin/client_search_cp"

headers={

"user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 Safari/537.36"

}

for i in range(1,page):

pararms={

"ct": "24",

"qqmusic_ver": "1298",

"new_json": "1",

"remoteplace": "txt.yqq.song",

"searchid": "67814518620895005",

"t": "0",

"aggr": "1",

"cr": "1",

"catZhida": "1",

"lossless": "0",

"flag_qc": "0",

"p": i,

"n": number,

"w": name,

"g_tk": "5381",

"loginUin": "0",

"hostUin": "0",

"format": "json",

"inCharset": "utf8",

"outCharset": "utf-8",

"notice": "0",

"platform": "yqq.json",

"needNewCode": "0"

}

res =requests.get(url,headers=headers,params=pararms)

items =res.json()

#定位歌曲信息

songs =items["data"]["song"]["list"]

#歌手名

name =items["data"]["keyword"]

for song in songs:

music_name=song["album"]["name"]

time =int(int(song["interval"])/60)

play_url =song['url']

writer.writerow([name,music_name,time,play_url])

if __name__ == '__main__':

crawl()

html文件匹配歌手名和歌名,获取QQ音乐歌手姓名、歌曲信息、播放链接,爬,起,qq,名字...相关推荐

  1. python批量爬取QQ音乐歌手的歌曲等信息

    import requests,openpyxl #导入模块 wb=openpyxl.Workbook() #创建工作薄 sheet=wb.active #获取工作薄的活动表 sheet.title= ...

  2. python爬虫入门——QQ音乐歌手照片及歌曲列表爬取

    #刚入门,大佬莫入 #程序功能:输入歌手名称后,程序会生成一个Word文件,Word文件里包括歌手名称.照片和所有歌曲列表! import requests, time import math fro ...

  3. 干货,QQ音乐歌手列表解密方法!

    上次 分享了一下 生意参谋的 解密方法,写不是很好,见谅. 这一次,我要分享的是 QQ音乐的歌手信息获取的解密方法,大神的可以绕道哦! 先来一张 QQ音乐 网站图,歌手列表地址:https://y.q ...

  4. 爬取QQ音乐歌手的歌单

    import requests# 引用requests库res_music = requests.get('https://c.y.qq.com/soso/fcgi-bin/client_search ...

  5. java 文件去除扩展名_Java操作——获取文件扩展名,去掉文件扩展名

    昨天收邮件,得知要参加一个产品部的会议,猜想,也许是因为我做的这个产品demo问题.于是昨天忙活到凌晨3点半,结果早上一来才知道又被调戏了.发邮件的MM把邮件误发给我了.悲催啊有木有,困啊有木有!自己 ...

  6. 随机获取歌曲信息播放php,网易云热评随机获取PHP代码

    随机获取网易云音乐的热评,可以修改源码,改成你自己需要的格式,参数format可决定返回的json格式或text格式分享在线接口文本格式:http://tool.ayangw.com/wyy/hot. ...

  7. VUE QQ音乐 歌手列表数据结构变更处理

    引入pinyin groupBy详见 import pinyin from 'pinyin'export function formatList(arr, keyword) {arr.forEach( ...

  8. 一行Java代码实现获取上传文件的后缀名

    场景 在进行上传文件时,需要对上传的文件进行重命名,那么就需要获取 上传文件的后缀名. 实现 //获取上传文件名fileName = file1.getOriginalFilename(); //获取 ...

  9. 我要爬爬虫(15)用appium爬取手机QQ音乐歌名

    我想爬一下QQ音乐的我喜欢的歌单里的VIP歌曲的歌名,想知道哪些歌曲是vip歌曲,获取一个歌名清单. 分别试了网页版和windows版以及官方PC版,可是网页版的歌单显示不全,只显示前几十首歌,之前还 ...

最新文章

  1. 【二级java】软件工程基础
  2. 谷歌自研终端AI芯片曝出重大进展,联手三星,用于手机笔记本
  3. Session 'app': Error Installing APK
  4. 用户自定义一个异常,编程创建并抛出某个异常类的实例。运行该程序并观察执行结果。
  5. 问题 1052: [编程入门]链表合并
  6. 计蒜客 28437.Big brother said the calculation-线段树+二分-当前第k个位置的数 ( ACM训练联盟周赛 M)...
  7. AOP拦截器 表达式写法
  8. S太赞了!大佬竟然用ELK搭建起了支撑TB级的日志监控系统...
  9. 在微信公众号中写html代码吗,微信公众号代码编写怎么做
  10. 单循环比赛规则-java
  11. 计算机汉字录入技能怎么上,用手动录入怎么样把文件录入电脑?快速录入文字...
  12. PPT转换成图片及合成长图
  13. 阳光沙滩博客系统后端api
  14. PTA题目 电话聊天狂人 散列表 map
  15. 中国农垦周先标谋定品牌-万祥军:对话农民丰收节交易会
  16. 『№20170501賽果確認』(5月9日晚上10:00分結束)
  17. Tableau 中国教育水平发展指标历史数据(一)教育公共开支总额和GDP
  18. window批量合并txt文档
  19. 奥鹏英语计算机统考时间2019,关于2019年9月统考工作安排的通知
  20. python3 生成器_python3之迭代器和生成器

热门文章

  1. 获取微信昵称乱码php,Android 微信登录昵称乱码问题,及获取微信用户信息
  2. [AutoVue开发手册]第二篇——AutoVue之Applet参数列表
  3. 用docker安装tomcat并实现目录映射端口映射输入ip地址测试网页连接
  4. 一键封装app--webapp、HybridApp
  5. pg数据库开启远程连接_PostgreSQL 允许远程访问设置的操作
  6. Linux下通过命令行登录北交校园网
  7. 云架构Linux运维,【Linux云计算架构:第三阶段-Linux高级运维...
  8. 读《深入浅出MySQL数据库开发、优化与管理维护(第2版)》笔记2 WITH ROLLUP关键字
  9. 关键词广告支付模式的研究
  10. 一个用java演示的产生图像烟花的算法