华语乐坛到底姓什么?------酷狗篇

爬取页面展示

  • 热门榜单——酷狗top500:
    https://www.kugou.com/yy/rank/home/1-8888.html?from=rank

在这里插入图片描述

  • 特色榜单——影视金曲榜:
    https://www.kugou.com/yy/rank/home/1-33163.html?from=rank

在这里插入图片描述

项目分析

对于酷狗top500:

  • 打开network发现酷狗并没有将榜单封装在json里面,所以还是使用BeautifulSoup爬取
    在这里插入图片描述
  • 观察页面发现,并没有下一页的选项,只有下载客户端
    在这里插入图片描述
  • 再观察url发现 :https://www.kugou.com/yy/rank/home/1-8888.html?from=rank,出现了1-8888,故猜测下一个页面是2-8888吗,推测正确,按这个规律,应该有23个页面
    在这里插入图片描述
    对于酷狗影视金曲榜(100首):
    同理:
    在这里插入图片描述
    综上:对于酷狗的整个榜单模块只需要替换页数跟榜单id值即可随便爬取
    在这里插入图片描述

项目结构

在这里插入图片描述

词云轮廓图

  • wc.jpg

在这里插入图片描述

  • kugoutop500.py
import time
import requests
from bs4 import BeautifulSoup
import pandas as pd
from matplotlib import pyplot as plt
from wordcloud import WordCloud
from PIL import Image
import numpy as np
def main():dic = get_data()items = process_data(dic)print(len(items), items)word_cloud(items)
def get_data():dic = {}for i in range(1, 24):urls = 'https://www.kugou.com/yy/rank/home/%d-8888.html?from=rank' % ihead = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) ""Chrome/92.0.4577.63 Safari/537.36}"}html = requests.get(urls, headers=head)soup = BeautifulSoup(html.text, 'lxml')titles = soup.select('.pc_temp_songname')href = soup.select('.pc_temp_songname')times = soup.select('.pc_temp_time')data_all = []for titles, times, href in zip(titles, times, href):data = {'歌名': titles.get_text().replace('\n', '').replace('\t', '').replace('\r', '').split('-')[0],'歌手': titles.get_text().replace('\n', '').replace('\t', '').replace('\r', '').split('-')[1],'时长': times.get_text().strip().replace('\n', '').replace('\t', '').replace('\r', ''),'链接': href.get('href')}print(data)cnt_songer(data['歌手'], dic)data_all.append(data)time.sleep(2)return dic
def cnt_songer(songer, dic):if songer not in dic:dic[songer] = 1else:dic[songer] = dic[songer] + 1
def process_data(dic):items = dict(sorted(dic.items(), key=lambda x: x[1], reverse=True))items = {key: value for key, value in items.items() if value > 1}print(items)return items
def word_cloud(items):img = Image.open(r'wc.jpg')imgarr = np.array(img)wc = WordCloud(background_color='black',mask=imgarr,font_path='C:/Windows/Fonts/msyh.ttc',scale=20,prefer_horizontal=0.5,# 表示在水平如果不合适,就旋转为垂直方向random_state=55)wc.generate_from_frequencies(items)plt.figure(5)plt.imshow(wc)plt.axis('off')plt.show()wc.to_file("酷狗TOP500词云1.png")
if __name__ == '__main__':main()
  • 运行截图:
    在这里插入图片描述
56 {' 周杰伦': 37, ' 林俊杰': 18, ' 王靖雯': 6, ' 张杰': 6, ' 陈奕迅': 4, ' 任然': 4, ' 海来阿木': 4, ' 蓝心羽': 4, ' 王杰': 4, ' 莫叫姐姐': 3, ' 毛不易': 3, ' 王菲': 3, ' 海伦': 3, ' 阿YueYue': 3, ' 郁可唯': 3, ' 半吨兄弟': 3, ' 许巍': 3, ' 张信哲': 3, ' 李荣浩': 3, ' F.I.R.飞儿乐团': 3, ' 不是花火呀': 3, ' 张碧晨': 2, ' 队长': 2, ' 程jiajia': 2, ' BEYOND': 2, ' 蔡健雅': 2, ' 洛先生': 2, ' 陈慧娴': 2, ' 程响': 2, ' 王小帅': 2, ' 徐佳莹': 2, ' Charlie Puth': 2, ' 小蓝背心': 2, ' IN': 2, ' Taylor Swift': 2, ' 七叔(叶泽浩)': 2, ' 周深': 2, ' 大欢': 2, ' 戴羽彤': 2, ' 小阿枫': 2, ' 苏星婕': 2, ' 刘德华': 2, ' 周传雄': 2, ' 苏谭谭': 2, ' 孙燕姿': 2, ' 王忻辰、苏星婕': 2, ' 李克勤': 2, ' 林子祥': 2, ' 庄心妍': 2, ' 闻人听書_': 2, ' 朱添泽': 2, ' 陈子晴': 2, ' 胡66': 2, ' aespa (에스파)': 2, ' OneRepublic': 2, ' 凤凰传奇': 2}

酷狗top500词云:(这才是真正的“华语乐坛”)
在这里插入图片描述

  • 酷狗影视金曲.py
import time
import requests
from bs4 import BeautifulSoup
import pandas as pd
from matplotlib import pyplot as plt
from wordcloud import WordCloud
from PIL import Image
import numpy as np
def main():dic = get_data()items = process_data(dic)print(len(items), items)word_cloud(items)
def get_data():dic = {}for i in range(1, 5):urls = 'https://www.kugou.com/yy/rank/home/%d-33163.html?from=rank' % ihead = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) ""Chrome/92.0.4577.63 Safari/537.36}"}html = requests.get(urls, headers=head)soup = BeautifulSoup(html.text, 'lxml')titles = soup.select('.pc_temp_songname')href = soup.select('.pc_temp_songname')times = soup.select('.pc_temp_time')data_all = []for titles, times, href in zip(titles, times, href):data = {'歌名': titles.get_text().replace('\n', '').replace('\t', '').replace('\r', '').split('-')[0],'歌手': titles.get_text().replace('\n', '').replace('\t', '').replace('\r', '').split('-')[1],'时长': times.get_text().strip().replace('\n', '').replace('\t', '').replace('\r', ''),'链接': href.get('href')}print(data)cnt_songer(data['歌手'], dic)data_all.append(data)time.sleep(2)return dic
def cnt_songer(songer, dic):if songer not in dic:dic[songer] = 1else:dic[songer] = dic[songer] + 1
def process_data(dic):items = dict(sorted(dic.items(), key=lambda x: x[1], reverse=True))items = {key: value for key, value in items.items() if value > 1}print(items)return itemsdef word_cloud(items):img = Image.open(r'wc.jpg')imgarr = np.array(img)wc = WordCloud(background_color='black',mask=imgarr,font_path='C:/Windows/Fonts/msyh.ttc',scale=20,prefer_horizontal=0.5,# 表示在水平如果不合适,就旋转为垂直方向random_state=55)wc.generate_from_frequencies(items)plt.figure(5)plt.imshow(wc)plt.axis('off')plt.show()wc.to_file("酷狗影视金曲词云.png")
if __name__ == '__main__':main()
  • 运行截图:
    在这里插入图片描述
15 {' BEYOND': 5, ' 陈奕迅': 4, ' 李克勤': 3, ' 林俊杰': 3, ' 王菲': 2, ' 莫文蔚': 2, ' 周杰伦': 2, ' 郁可唯': 2, ' 刘若英': 2, ' 王杰': 2, ' 毛不易': 2, ' 朴树': 2, ' 薛之谦': 2, ' 杨丞琳': 2, ' 刘德华': 2}
  • 影视金曲榜词云:(梅开二度)
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/25629.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华语电影

转载于:https://www.cnblogs.com/yymn/p/4512893.html

华为eSpace7910话机通讯录配置

1.登录话机IP。默认账号 admin/admin123 2.在左侧导航栏选择高级——服务——通讯录服务器 3.点击通讯录服务器选择LADP 4.按照下图设置LADP选项 LDAP服务器:172.16.237.1 LDAP端口:389 根节点:oucontacts,ouGD,ouAH,dcXXXX,dccom 账号:域…

华为产品测评官-开发者之声 - 产品体验

目录 活动介绍产品体验过程以及感受实战经验(具体的操作步骤和结果) 活动介绍 本期活动有机会使用并评估华为多个产品,包括华为云CodeArts,华为云ModelArts,鲲鹏DevKit,昇腾CANN,昇思MindSpore。无论您是初…

华为语音合成服务,为用户提供实时、可替换、多音调的语音播放体验

在不能操作手机或总盯着手机看的情况下,如何及时获取资讯信息、方便阅读呢?用耳朵听不失为一种好方法。华为机器学习服务的语音合成服务,采用深度神经网络技术,提供高度拟人、流畅自然的语音合成服务。开发者可以在小说阅读、智能…

基于OpenHarmony开发的语音小助手

基于OpenHarmony开发的语音小助手 本教程将演示如何在BearPi-HM_Nano开发板上使用GPIO输入功能去读取语音模块信息,实现****开关灯自由****!! 一、实验前器材准备 语音识别模块 语音播放模块 SD卡 无源喇叭 BearPi-HM_Nano开发板 E53—SC1…

带语音通话功能的华为ME909s-821a使用方法

关键词:华为 HUAWEI ME909s 821a V2 语音 Codec 正文:不少用户反馈,希望华为ME909s-821a模块能带上语音通话功能,其实821a模块引出了PCM数字音频接口,我们只需要外挂一个PCM codec即可实现语音通话功能。但是考虑…

调用华为API实现中文语音识别

目录 1. 作者介绍2. 华为云中文语音识别2.1 录音文件识别与获取2.2 限制要求2.3 对象存储服务(OBS)简介 3. 实验过程以及结果3.1获得API3.2 代码实现3.3 运行结果 参考(可供参考的链接和引用文献) 1. 作者介绍 张楠,女…

chatgpt赋能python:Python处理Word文件的优秀方案

Python处理Word文件的优秀方案 如今,Word文档在生活中变得越来越普遍,不仅在学校或办公室中使用,而且也在日常生活中,像编辑简历、写作业、撰写文档和工作报告等方面也十分常见。因此,学习如何使用Python处理Word文件…

期待文心一言体验号

期待百度文心一言的体验号,用好chatGPT首先要问自己想要什么,该怎么问才能高效拿到想要的目标结果。遇弱则弱,遇强则强,遇到正能量就能传递正能量! 谁有文心一言体验地址麻烦提供一下,交流一下: 下方是回复…

ChatGPT时代:数据标注会成为一种人机交互“语言”么?

标注猿的第70篇原创 一个用数据视角看AI世界的标注猿 大家好,我是AI数据标注猿刘吉,一个用数据视角看AI世界的标注猿。 从去年的10月份到现在有半年的时间没有更新了,去年没有更新是疫情的原因,今年没有更新主要有两个原因一…

Plus 版 Chatgpt,和任何的 PDF 聊天! #Chatpdf

Chatgpt 的出现,颠覆了整个内容生产行业的同时,也极大地提高了很多文字工作者的效率。 于是一时之间,各大公司都在争先推出自己的聊天机器人,希望在这个新兴而庞大的市场分一杯羹。‍‍‍‍‍‍‍‍ 于是 Chatpdf 出现了&#xff…

大厂程序员手把手教你如何写简历(附简历模板)

代码随想录刷题网站上线咯:programmercarl.com,200道力扣题目刷题顺序,详细题解,支持C、Java、Python、Go、JS等多语言版本,一个你只要发现,就会收藏的硬核算法学习网站。 文章目录 简历基调谨慎使用精通两…

ChatGPT做的简历戳中HR心巴,小伙刚毕业就拿下梦想offer!

西风 发自 凹非寺量子位 | 公众号 QbitAI 鹅妹子嘤,最近一位毕业生用ChatGPT生成的求职信,分分钟躲过简历筛选算法。 然后,自己梦寐以求的工作就真的到手了! 这位用ChatGPT帮忙找工作的小伙表示: 三月份以来写所有东西…

软件测试个人求职简历该怎么写,模板在这里

目录 1、个人资料 2、专业技能 3、工作经验 4、项目经验 5、教育背景 1、个人资料 姓 名:xxx 性 别:x 手机号码:138888888xx 邮 箱: xxx 学 历:本科 专 业:电子商务 英 语:四级 当前工作…

程序员简历应该怎么写?

说到程序员简历,这两个月,我看过不下10,000份简历。。。 答主不是HR,也不是技术负责人,但是在网站的运营工作中,每天最开心的事情就是研究候选人的简历了~~ 这些人中,有BAT的资深大牛程序员,也有…

建议这样使用ChatGPT,让你成为更好的开发者

这样使用ChatGPT,让你成为更好的开发者 作为开发人员,您的责任之一是不断学习和提高您的技能。ChatGPT 是一个强大的工具,可以通过多种方式帮助您成为更好的开发人员。如果你不知道什么是 ChatGPT,它是 OpenAI 开发的一种大型语言…

大会线上同步直播, 来不到现场也可以线上看直播,以及参会秘籍

紧急提醒:还有1天! 2020.NET开发者大会就要开幕啦! 你都做好参会准备没有? 特殊时期,为方便小伙伴们顺利参会,小编特意整理了这篇大会参会攻略,大到各种日程安排、小到签到、出行、防疫等&#…

10、记录使用科大讯飞的语音唤醒硬件生成PCM文件,通过ffmpeg库去生成MP3音频文件

基本思想:不太会ffmpeg解析pcm的音频文件,所以记录一下结合具体的场景和具体的应用 具体生成的pcm使用的官方代码,不详细叙述,官方的唤醒模块将会产生一个pcm文件,可使用下列命令或者代码将pcm转成mp3文件&#xff0c…

深兰科技亮相2023数博会:硅基知识大模型推动个人数字化产业

近日,2023中国国际大数据产业博览会 “数字经济与实体经济深度融合”论坛在贵阳举行。腾讯云、京东集团、网易、深兰科技等8家企业负责人进行了行业演讲。 作为2023数博会的专业论坛之一,本次论坛以“数融百业 创变赋新”为主题,从数实融合视…

吴怀宇 | 对比欧盟,中国的《人工智能法案》应有什么底座?

来源:OpenDAI 作者:吴怀宇 中国科学院博士、北京大学博士后 2023年6月14日,欧洲议会全体会议表决通过了《人工智能法案》授权草案,标志着该法案将进入欧盟立法严格监管人工智能技术应用的最终谈判阶段。欧洲议会此前曾发出声明&a…