2024年最全Python 爬取张国荣最火的 8 首歌,60000 评论看完泪奔!,字节面试题

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

今天,CSDN选择以科技的方式,来纪念哥哥。

我们爬取了你在网易云音乐上,评论最多的八首歌曲。

它们依次是:《沉默是金》《春夏秋冬》《倩女幽魂》《当爱已成往事》《我》《风继续吹》《玻璃之情》《风再起时》。

总共64540条的评论中,出现最多的是“生日快乐”、“哥哥”、“加油”、“你若尚在场”、“新年快乐”和“哥哥,生日快乐”。

640?wx_fmt=png

词云图里很少有“4月1日”、“愚人节”的字眼,这并不是今天去给你评论的人少,而是今天这个日子,实在不适合对你说“快乐”。

来,先给大家看看评论的代码。

 

# coding:utf-8
import json
import time
import requests
from fake_useragent import UserAgent
import random
import multiprocessing
import sys
#reload(sys)
#sys.setdefaultencoding(‘utf-8’)

ua = UserAgent(verify_ssl=False)

song_list = [{‘186453’:‘春夏秋冬’},{‘188204’:‘沉默是金’},{‘188175’:‘倩女幽魂’},{‘188489’:‘风继续吹’},{‘187374’:‘我’},{‘186760’:‘风雨起时’}]
headers = {
    ‘Origin’:‘https://music.163.com’,
    ‘Referer’: ‘https://music.163.com/song?id=26620756’,
    ‘Host’: ‘music.163.com’,
    ‘User-Agent’: ua.random
}

def get_comments(page,ite):
    # 获取评论信息
    # “”"
    for key, values in ite.items():
        song_id = key
        song_name = values
    ip_list = [IP列表]
    url = ‘http://music.163.com/api/v1/resource/comments/R_SO_4_’+ song_id +‘?limit=20&offset=’ + str(page)
    proxies = get_random_ip(ip_list)
    try:
        response = requests.get(url=url, headers=headers,proxies=proxies)
    except Exception as e:
        print (page)
        print (ite)
        return 0
    result = json.loads(response.text)
    items = result[‘comments’]
    for item in items:
        # 用户名
        user_name = item[‘user’][‘nickname’].replace(‘,’, ‘,’)
        # 用户ID
        user_id = str(item[‘user’][‘userId’])
        print(user_id)
        # 评论内容
        comment = item[‘content’].strip().replace(‘\n’, ‘’).replace(‘,’, ‘,’)
        # 评论ID
        comment_id = str(item[‘commentId’])
        # 评论点赞数
        praise = str(item[‘likedCount’])
        # 评论时间
        date = time.localtime(int(str(item[‘time’])[:10]))
        date = time.strftime(“%Y-%m-%d %H:%M:%S”, date)

八首歌的歌词代码:

 

import requests
from bs4 import BeautifulSoup
import re
import json
import time
import random
import os

headers = {
    ‘User-Agent’: ‘Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3355.4 Safari/537.36’,
    ‘Referer’: ‘http://music.163.com’,
    ‘Host’: ‘music.163.com’
}

# 获取页面源码
def GetHtml(url):
    try:
        res = requests.get(url=url, headers=headers)
    except:
        return None
    return res.text

# 提取歌手歌词信息
def GetSongsInfo(url):
    print(‘[INFO]:Getting Songs Info…’)
    html = GetHtml(url)
    soup = BeautifulSoup(html, ‘lxml’)
    links = soup.find(‘ul’, class_=‘f-hide’).find_all(‘a’)
    if len(links) < 1:
        print(‘[Warning]:_GetSongsInfo  not find…’)
    Info = {‘ID’: [], ‘NAME’: []}
    for link in links:
        SongID = link.get(‘href’).split(‘=’)[-1]
        SongName = link.get_text()
        Info[‘ID’].append(SongID)
        Info[‘NAME’].append(SongName)
    # print(Info)
    return Info

def GetLyrics(SongID):
    print(‘[INFO]:Getting %s lyric…’ % SongID)
    ApiUrl = ‘http://music.163.com/api/song/lyric?id={}&lv=1&kv=1&tv=-1’.format(SongID)
    html = GetHtml(ApiUrl)
    html_json = json.loads(html)
    temp = html_json[‘lrc’][‘lyric’]
    rule = re.compile(r’[.*]')
    lyric = re.sub(rule, ‘’, temp).strip()
    print(lyric)
    return lyric

def main():
    SingerId = input(‘Enter the Singer ID:’)
    url = ‘http://music.163.com/artist?id={}’.format(SingerId)
    # url = “http://music.163.com/artist?id=6457”
    Info = GetSongsInfo(url)
    IDs = Info[‘ID’]
    i = 0
    for ID in IDs:
        lyric = GetLyrics(ID)
        SaveLyrics(Info[‘NAME’][i], lyric)
        i += 1
        time.sleep(random.random() * 3)
        # print(‘[INFO]:All Done…’)

def SaveLyrics(SongName, lyric):
    print(‘[INFO]: Start to Save {}…’.format(SongName))
    if not os.path.isdir(‘./results’):
        os.makedirs(‘./results’)
    with open(‘./results/{}.txt’.format(SongName), ‘w’, encoding=‘utf-8’) as f:
        f.write(lyric)

640?wx_fmt=png

《沉默是金》

是错永不对 真永是真

任你怎说安守我本份

始终相信 沉默是金

这首歌是你亲自谱曲的。

当时,“谭张争霸”(1986-1989年,谭咏麟和张国荣为争夺乐坛地位,而在音乐上展开了全面竞争角逐)已经进入白热化。

你讨厌争来争去,于是借歌明志,推出了《沉默是金》。

你说,“任你怎说安守我本份,始终相信,沉默是金。”

清者自清,你的沉默,愈加彰显纯真本色。

640?wx_fmt=png

《春夏秋冬》

秋天该很好 你若尚在场

秋风即使带凉 亦漂亮

深秋中的你填密我梦想

就像落叶飞 轻敲我窗

每到你生日时、每到新年时、每到你离开世界的那天时,你的歌下面就会有大量评论涌来。

你是4月1日走的,但是喜欢你的人,总是3月30日、31日甚至更早,就来你的音乐下面评论。

多少人希望你复活,甚至有人在重庆看到一位和你眉眼很像的出租者司机,都忍不住拍下。

你眼神中的澄澈和犹豫,事隔经年,还是那么让人无法忘记。

640?wx_fmt=other

图源自网络

640?wx_fmt=png

《倩女幽魂》

红尘里 美梦有几多方向

找痴痴梦幻中心爱

路随人茫茫

640?wx_fmt=gif

《倩女幽魂》里,你是羞涩怯弱的书生,走夜路时要点三盏灯笼,但却为了担心阳光把小倩的魂魄照散,死死地用肩膀扛着门板。

小倩走了,宁采臣的心也跟着死了。

哥哥走了,别人再演宁采臣,总感觉除却巫山不是云。

640?wx_fmt=png

《当爱已成往事》

为何你不懂

只要有爱就有痛

有一天你会知道

人生没有我并不会不同

《霸王别姬》里,你演程蝶衣。

演得那么妩媚,以至于有人断言你是童子功出身。

其实,你只不过是重病还坚持训练而已。

你说“不疯魔,不成活”,所以你知道段小楼娶妻后,会嫉妒会难过会发狂。

戏里戏外,你都爱过,你说“只要有爱就有痛”,但却更像是唱给自己听。

你这样的纯粹和“认死理”,总是让粉丝很心疼你…

640?wx_fmt=png

《我》

孤独的沙漠里 一样盛放的赤裸裸

多么高兴 在琉璃屋中快乐生活

对世界说 甚么是光明和磊落

我就是我 是颜色不一样的烟火

多少人用你唱的那句“我就是我,是颜色不一样的烟火”来鼓励自己活出自我。

但最后你却已烟火一样的方式,离开了人世间。

几年前,梁朝伟在纪念你的演唱会上,拨通你的电话。

电话里,留言声依旧,“你好,我是leslie,有事请留言。”

640?wx_fmt=jpeg

图源自网络

梁朝伟沉默了,许久之后,淡淡说句:“宝荣啊,不如我们从头来过。”

640?wx_fmt=png

《风继续吹》

做了那么多年开发,自学了很多门编程语言,我很明白学习资源对于学一门新语言的重要性,这些年也收藏了不少的Python干货,对我来说这些东西确实已经用不到了,但对于准备自学Python的人来说,或许它就是一个宝藏,可以给你省去很多的时间和精力。

别在网上瞎学了,我最近也做了一些资源的更新,只要你是我的粉丝,这期福利你都可拿走。

我先来介绍一下这些东西怎么用,文末抱走。


(1)Python所有方向的学习路线(新版)

这是我花了几天的时间去把Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

最近我才对这些路线做了一下新的更新,知识体系更全面了。

在这里插入图片描述

(2)Python学习视频

包含了Python入门、爬虫、数据分析和web开发的学习视频,总共100多个,虽然没有那么全面,但是对于入门来说是没问题的,学完这些之后,你可以按照我上面的学习路线去网上找其他的知识资源进行进阶。

在这里插入图片描述

(3)100多个练手项目

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了,只是里面的项目比较多,水平也是参差不齐,大家可以挑自己能做的项目去练练。

在这里插入图片描述

(4)200多本电子书

这些年我也收藏了很多电子书,大概200多本,有时候带实体书不方便的话,我就会去打开电子书看看,书籍可不一定比视频教程差,尤其是权威的技术书籍。

基本上主流的和经典的都有,这里我就不放图了,版权问题,个人看看是没有问题的。

(5)Python知识点汇总

知识点汇总有点像学习路线,但与学习路线不同的点就在于,知识点汇总更为细致,里面包含了对具体知识点的简单说明,而我们的学习路线则更为抽象和简单,只是为了方便大家只是某个领域你应该学习哪些技术栈。

在这里插入图片描述

(6)其他资料

还有其他的一些东西,比如说我自己出的Python入门图文类教程,没有电脑的时候用手机也可以学习知识,学会了理论之后再去敲代码实践验证,还有Python中文版的库资料、MySQL和HTML标签大全等等,这些都是可以送给粉丝们的东西。

在这里插入图片描述

这些都不是什么非常值钱的东西,但对于没有资源或者资源不是很好的学习者来说确实很不错,你要是用得到的话都可以直接抱走,关注过我的人都知道,这些都是可以拿到的。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值