摘要:我突發(fā)奇想學這么久了,為啥不用爬取站中我關注的人,已經(jīng)關注的人他們關注的人,看看全站里面熱門的主都是是哪些。探秘是熱門主打算利用已經(jīng)爬取到本地的數(shù)據(jù)進行詞云的生成,來看一下這萬用戶中共同的關注的哪些主出現(xiàn)的次數(shù)最多。
Python(發(fā)音:英[?pa?θ?n],美[?pa?θɑ:n]),是一種面向對象、直譯式電腦編程語言,也是一種功能強大的通用型語言,已經(jīng)具有近二十年的發(fā)展歷史,成熟且穩(wěn)定。它包含了一組完善而且容易理解的標準庫,能夠輕松完成很多常見的任務。它的語法非常簡捷和清晰,與其它大多數(shù)程序設計語言不一樣,它使用縮進來定義語句。
Python支持命令式程序設計、面向對象程序設計、函數(shù)式編程、面向切面編程、泛型編程多種編程范式。與Scheme、Ruby、Perl、Tcl等動態(tài)語言一樣,Python具備垃圾回收功能,能夠自動管理存儲器使用。它經(jīng)常被當作腳本語言用于處理系統(tǒng)管理任務和網(wǎng)絡程序編寫,然而它也非常適合完成各種高級任務。Python虛擬機本身幾乎可以在所有的作業(yè)系統(tǒng)中運行。使用一些諸如py2exe、PyPy、PyInstaller之類的工具可以將Python源代碼轉換成可以脫離Python解釋器運行的程序。
粉絲獨白
說起熱門的B站相信很多喜歡玩動漫的,看最有創(chuàng)意的Up主的同學一定非常熟悉。我突發(fā)奇想學Python這么久了,為啥不用Python爬取B站中我關注的人,已經(jīng)關注的人他們關注的人,看看全站里面熱門的UP主都是是哪些。
要點:
爬取10萬用戶數(shù)據(jù)
數(shù)據(jù)存儲
數(shù)據(jù)詞云分析
1.準備階段
寫代碼前先構思思路:既然我要爬取用戶關注的用戶,那我需要存儲用戶之間的關系,確定誰是主用戶,誰是follower。
存儲關系使用數(shù)據(jù)庫最方便,也有利于后期的數(shù)據(jù)分析,我選擇sqlite數(shù)據(jù)庫,因為Python自帶sqlite,sqlite在Python中使用起來也非常方便。
數(shù)據(jù)庫中需要2個表,一個表存儲用戶的相互關注信息,另一個表存儲用戶的基本信息,在B站的用戶體系中,一個用戶的mid號是唯一的。
然后我還需要一個列表來存儲所以已經(jīng)爬取的用戶,防止重復爬取,畢竟用戶之間相互關注的現(xiàn)象也是存在的,列表中存用戶的mid號就可以了。
2.新建數(shù)據(jù)庫
先寫建數(shù)據(jù)庫的代碼,數(shù)據(jù)庫中放一個用戶表,一個關系表:
3.爬取前5頁的用戶數(shù)據(jù)
我需要找到B站用戶的關注列表的json接口,很快就找到了,地址是:
https://api.bilibili.com/x/re...
其中vimd=后的參數(shù)就是用戶的mid號
pn=1指用戶的關注的第一面用戶,一面顯示20個用戶
因為B站的隱私設置,一個人只能爬取其他人的前5頁關注,共100人。
整個爬取頁面的思路比較簡單,首先設置header,用requests庫進行API請求,獲得關注的用戶數(shù)據(jù)列表。
我們爬取前5頁,每一頁的數(shù)據(jù)進行簡單的處理,然后轉為字典數(shù)據(jù)進行獲取mid,uname,sign3個維度的數(shù)據(jù),最后save()函數(shù)存入db.
4.存入數(shù)據(jù)庫
我們數(shù)據(jù)集里面一共有2個表,一個用戶列表,用來存儲所以的用戶信息,一個是用戶之間的關注信息。
5.探秘是熱門UP主
打算利用已經(jīng)爬取到本地的數(shù)據(jù)進行詞云的生成,來看一下這10萬用戶中共同的關注的哪些UP主出現(xiàn)的次數(shù)最多。
代碼的思路主要是從數(shù)據(jù)庫中獲取用戶的名字,重復的次數(shù)越多說明越多的用戶關注,然后我使用fate的一張圖片作為詞云的mask圖片,最后生成詞云圖片。
最后一起來看一下詞云圖
可以看出蕾絲,暴走漫畫,木魚水心,參透之C君,papi醬等B站大UP主都是熱門關注。
Python可以做什么?
web開發(fā)和 爬蟲是比較適合 零基礎的
自動化運維 運維開發(fā) 和 自動化測試 是適合 已經(jīng)在做運維和測試的人員
大數(shù)據(jù) 數(shù)據(jù)分析 這方面 是很需要專業(yè)的 專業(yè)性相對而言比較強
科學計算 一般都是科研人員 在用
機器學習 和 人工智能 首先 學歷 要求高 其次 高數(shù)要求高 難度很大
我有一個微信公眾號,經(jīng)常會分享一些python技術相關的干貨;如果你喜歡我的分享,可以用微信搜索“python語言學習”關注
歡迎大家加入千人交流答疑裙:699+749+852
文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://m.hztianpu.com/yun/41845.html
摘要:時間永遠都過得那么快,一晃從年注冊,到現(xiàn)在已經(jīng)過去了年那些被我藏在收藏夾吃灰的文章,已經(jīng)太多了,是時候把他們整理一下了。那是因為收藏夾太亂,橡皮擦給設置私密了,不收拾不好看呀。 ...
各位童鞋,大家好,我是? 在《?UI自動化工具輕松實現(xiàn)微信消息收發(fā)?朋友圈爬取??》文末給童鞋們布置了一個作業(yè),批量朋友圈爬取,不知道大伙們是否還有映像。 看到很多小伙伴們踴躍報名參與,不禁要給你們點個贊。考慮到很多小伙伴想做卻做出來,這…貼心的我這不就來給你們公布參考答案啦? 對相關基礎還不了解的童鞋請參考前文: 《?UI自動化工具輕松實現(xiàn)微信消息收發(fā)?朋友圈爬取??》 《???對比PyWi...
摘要:寫在最后近年來,隨著人們思想觀念的改變,相親也逐漸得到年輕人的接受與認可,特別是對于那些圈子比較窄,接觸不到異性的人而言。 前不久,小編刷到這樣一條短視頻,1.7億...
摘要:年之后,輿論熱點已經(jīng)逐漸從大數(shù)據(jù)轉向人工智能,大數(shù)據(jù)行業(yè)也歷經(jīng)整合。近一年間,一些大數(shù)據(jù)公司相繼出現(xiàn)裁員業(yè)務大調(diào)整等情況,部分公司出現(xiàn)虧損。今年開始,部分院校將招收第一屆大數(shù)據(jù)專業(yè)本科生。 在這個信息時代高速發(fā)展的情況下,很多人會對自己該往哪個方向發(fā)展感到迷茫,下面我就淺顯的給大家介紹一下五大流行區(qū)域的發(fā)展前景。 大數(shù)據(jù)的發(fā)展前景: 當前大數(shù)據(jù)行業(yè)真的是人才稀缺嗎? 學了幾年后,大數(shù)據(jù)...
摘要:年之后,輿論熱點已經(jīng)逐漸從大數(shù)據(jù)轉向人工智能,大數(shù)據(jù)行業(yè)也歷經(jīng)整合。近一年間,一些大數(shù)據(jù)公司相繼出現(xiàn)裁員業(yè)務大調(diào)整等情況,部分公司出現(xiàn)虧損。今年開始,部分院校將招收第一屆大數(shù)據(jù)專業(yè)本科生。 在這個信息時代高速發(fā)展的情況下,很多人會對自己該往哪個方向發(fā)展感到迷茫,下面我就淺顯的給大家介紹一下五大流行區(qū)域的發(fā)展前景。 大數(shù)據(jù)的發(fā)展前景: 當前大數(shù)據(jù)行業(yè)真的是人才稀缺嗎? 學了幾年后,大數(shù)據(jù)...
閱讀 3390·2021-11-24 09:39
閱讀 3170·2021-11-23 09:51
閱讀 972·2021-11-18 10:07
閱讀 3610·2021-10-11 10:57
閱讀 2851·2021-10-08 10:04
閱讀 3080·2021-09-26 10:11
閱讀 1161·2021-09-23 11:21
閱讀 2986·2019-08-29 17:28