Python 爬取張國榮最火的 8 首歌,60000 評論看完淚奔!
昨天是 4 月 1 日。
每年的這一天,
一部分人搜尋枯腸想盡辦法整蠱,
一部分人感懷四月該很好,倘若你還在。
甚至有人,用 AI 的方式來還原你。
但那終究不是你。
圖片來源見水印
你走了16 年了,那些當年在課桌前趁老師不注意偷偷聽你歌的少年們,或許早已為人夫為人婦。
即便如此,每年卻有很多人在這人間四月天裡,藉著你給世界留下的不絕回音,去思念你、去給你留言,即便明明知道,永遠也不會收到回覆。
眼下,我們選擇以科技的方式,來紀念哥哥。
我們爬取了你在網易雲音樂上,評論最多的八首歌曲。
它們依序是:《沉默是金》《春夏秋冬》《倩女幽魂》《當愛已成往事》《我》《風繼續吹》《玻璃之情》《風再起時》。
總共 64540 則的評論中,出現最多的是「生日快樂」、「哥哥」、「加油」、「你若尚在場」、「新年快樂」和「哥哥,生日快樂」。
詞雲圖裡很少有「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 <links> 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)
01
《沉默是金》
是錯永遠不會對真永是真
任你怎說安守我本份
#總是相信沉默是金
這首歌是你自己譜曲的。
當時,「譚張爭霸」(1986-1989 年,譚詠麟和張國榮為爭奪樂壇地位,而在音樂上展開了全面競爭角逐)已經進入白熱化。
你討厭爭來爭去,於是藉歌明志,推出了《沉默是金》。
你說,「任你怎說安守我本份,始終相信,沉默是金。」
清者自清,你的沉默,愈加彰顯純真本色。
02
《春夏秋冬》
秋天該很好你若尚在場
秋風即使帶涼亦漂亮
深秋中的你填密我夢想
就像落葉飛輕敲我窗
每到你生日時、每到新年時、每到你離開世界的那天時,你的歌下面就會有大量評論湧來。
你是 4 月 1 日走的,但是喜歡你的人,總是 3 月 30 日、31 日甚至更早,就來你的音樂下面評論。
多少人希望你復活,甚至有人在重慶中看到一位和你眉眼很像的出租者司機,都忍不住拍下。
你眼神中的澄澈和猶豫,事隔經年,還是那麼讓人無法忘記。
03
《倩女幽魂》
紅塵裡 美夢有幾多方向
找癡癡夢幻中心愛
路隨人茫茫
《倩女幽魂》裡,你是羞澀怯弱的書生,走夜路時要點三盞燈籠,但卻為了擔心陽光把小倩的魂魄照散,死死地用肩膀扛著門板。
小倩走了,寧采臣的心也跟著死了。
哥哥走了,別人再演寧采臣,總感覺除卻巫山不是雲。
04
#《當愛已成往事》
為何你不懂
只要有愛就有痛
有一天你會知道
人生没有我并不会不同
《霸王别姬》里,你演程蝶衣。
演得那么妩媚,以至于有人断言你是童子功出身。
其实,你只不过是重病还坚持训练而已。
你说“不疯魔,不成活”,所以你知道段小楼娶妻后,会嫉妒会难过会发狂。
戏里戏外,你都爱过,你说“只要有爱就有痛”,但却更像是唱给自己听。
你这样的纯粹和“认死理”,总是让粉丝很心疼你......
05
《我》
孤独的沙漠里 一样盛放的赤裸裸
多么高兴 在琉璃屋中快乐生活
对世界说 甚么是光明和磊落
我就是我 是颜色不一样的烟火
多少人用你唱的那句“我就是我,是颜色不一样的烟火”来鼓励自己活出自我。
但最后你却已烟火一样的方式,离开了人世间。
几年前,梁朝伟在纪念你的演唱会上,拨通你的电话。
电话里,留言声依旧,“你好,我是leslie,有事请留言。”
梁朝伟沉默了,许久之后,淡淡说句:“宝荣啊,不如我们从头来过。”
06
《风继续吹》
风继续吹不忍远离
心里亦有泪不愿流泪望着你
过去多少快乐记忆
何妨与你一起去追
这是你的成名曲,所以你似乎很中意它。
每每参加演唱会,都要唱一唱。
最后一次唱起时,不知怎的竟然哭了,台下观众也跟着你哭。
因为这首歌,是你翻身的见证啊。
你在歌坛摸爬滚打那么多年,一直寂寂无声,是这首歌才没有让你被埋没。
07
《玻璃之情》
不信眼泪 能令失落的你爱下去
难收的覆水 将感情漫漫荡开去
如果你太累 及时地道别没有罪
你曾说,每次唱歌前,都要给这首歌编一个故事,唱的时候,脑海中浮现出故事的画面,而这种画面感,让你唱得很投入。
为什么你的歌经久不息,就是因为你不仅对人重情,对歌也重情。
08
《风再起时》
我回头再往某年
像失色照片乍现眼前
这个茫然困惑少年
愿一生以歌 投入每天永不变
1989 年,已经见过了娱乐圈太多浮沉的你,突然宣布告别乐坛。
你见过喧嚣,但你却不属于喧嚣。
策划告别演唱会之前,你和音乐人陈少琪、黎小田商量。
陈少琪说,“你不是有一首成名曲叫《风继续吹》么?不如歌名就叫《风再起时》,就是希望只要一起风的时候,歌迷就会想起你的这首歌。”
边上的黎小田,花了十五分钟就在随手找来的白纸上,谱好了曲子。
很快,陈少琪也把词填好了。
有人说,这首歌里的歌词,就是为你量身定做的:“我回头再往某年,像失色照片乍现眼前,这个茫然困惑少年,愿一生以歌,投入每天永不变”。
愿一生以歌,投入每天永不变......
不知道現在的你,還唱歌嗎?還演戲嗎?
你知不知道,很多人都在想你。
謝謝你,留給我們這麼多歌曲和電影。
願你在另一個世界,永遠沒有憂鬱和傷心。
以上。
這篇文章到這裡就已經全部結束了,更多其他精彩內容大家可以關注PHP中文網的Python影片教學專欄! ! !
以上是Python 爬取張國榮最火的 8 首歌,60000 評論看完淚奔!的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。

PHP適合網頁開發和快速原型開發,Python適用於數據科學和機器學習。 1.PHP用於動態網頁開發,語法簡單,適合快速開發。 2.Python語法簡潔,適用於多領域,庫生態系統強大。

在 Sublime Text 中運行 Python 代碼,需先安裝 Python 插件,再創建 .py 文件並編寫代碼,最後按 Ctrl B 運行代碼,輸出會在控制台中顯示。

PHP起源於1994年,由RasmusLerdorf開發,最初用於跟踪網站訪問者,逐漸演變為服務器端腳本語言,廣泛應用於網頁開發。 Python由GuidovanRossum於1980年代末開發,1991年首次發布,強調代碼可讀性和簡潔性,適用於科學計算、數據分析等領域。

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。

Golang在性能和可擴展性方面優於Python。 1)Golang的編譯型特性和高效並發模型使其在高並發場景下表現出色。 2)Python作為解釋型語言,執行速度較慢,但通過工具如Cython可優化性能。

在 Visual Studio Code(VSCode)中編寫代碼簡單易行,只需安裝 VSCode、創建項目、選擇語言、創建文件、編寫代碼、保存並運行即可。 VSCode 的優點包括跨平台、免費開源、強大功能、擴展豐富,以及輕量快速。

在 Notepad 中運行 Python 代碼需要安裝 Python 可執行文件和 NppExec 插件。安裝 Python 並為其添加 PATH 後,在 NppExec 插件中配置命令為“python”、參數為“{CURRENT_DIRECTORY}{FILE_NAME}”,即可在 Notepad 中通過快捷鍵“F6”運行 Python 代碼。
