數(shù)據(jù)從哪里來(lái)呢?我們可以通過(guò)網(wǎng)絡(luò)爬蟲(chóng)來(lái)爬取數(shù)據(jù),但是這個(gè)還是需要耗費(fèi)一定時(shí)間的。
這時(shí)候就會(huì)有朋友說(shuō)了,有沒(méi)有現(xiàn)成的數(shù)據(jù)呢?當(dāng)然有了,今天就給大家分享一個(gè)基于 Python 的、簡(jiǎn)便易用的數(shù)據(jù)接口,可能包含我們想要的各種各樣的數(shù)據(jù)。
簡(jiǎn)介
這個(gè)庫(kù)的名字叫 GoPUP,GitHub 主頁(yè)是:https://github.com/justinzm/gopup
這其實(shí)是一個(gè)基于公開(kāi) API 的數(shù)據(jù)接口庫(kù),這個(gè)庫(kù)封裝了各種各樣的方法,比如通過(guò) wx_hot_list 這個(gè)方法我們就可以獲取實(shí)時(shí)的微信熱門(mén)文章榜單。
基本使用
下面我們來(lái)簡(jiǎn)單介紹下它的使用方法,首先是安裝,使用 pip3 即可:
pip3installgopup
因?yàn)檫@個(gè)庫(kù)會(huì)不斷升級(jí),如果要升級(jí)的話大家可以運(yùn)行如下命令:
pip3install-Ugopup
安裝完畢之后就可以開(kāi)始使用了,其實(shí)使用起來(lái)還是非常簡(jiǎn)單的。
比如這里我們以「微博指數(shù)」為例來(lái)說(shuō)明下用法,官方文檔見(jiàn) http://doc.gopup.cn/#/data/index_data?id=微博指數(shù)數(shù)據(jù)
-
接口: weibo_index
-
目標(biāo)地址: https://data.weibo.com/index/newindex
-
描述: 獲取指定 詞語(yǔ) 的微博指數(shù)
-
輸入?yún)?shù)
名稱 | 類型 | 必須 | 描述 |
---|---|---|---|
word | str | Y | 關(guān)鍵詞 |
time_type | str | Y | time_type="1hour"; 1hour, 1day, 1month, 3month 選其一. |
- 輸出參數(shù)
名稱 | 類型 | 默認(rèn)顯示 | 描述 |
---|---|---|---|
date | datetime | Y | 日期-索引 |
index | float | Y | 指數(shù) |
大家可以看到,這個(gè)接口的目標(biāo)地址實(shí)際上就是一個(gè)公開(kāi) API,然后我們只需要輸入對(duì)應(yīng)的詞語(yǔ)和時(shí)間段,就可以輸出對(duì)應(yīng)的指數(shù)結(jié)果。
接口用法如下:
importgopupasgp
df_index=gp.weibo_index(word="疫情",time_type="3month")
print(df_index)
這里我們先導(dǎo)入了 gopup 庫(kù),然后調(diào)用了它的 weibo_index 方法,傳入關(guān)鍵詞和時(shí)間段,這里我們查詢的是最近三個(gè)月的疫情對(duì)應(yīng)的微博指數(shù),也就對(duì)應(yīng)這個(gè)詞在微博的熱度。
運(yùn)行結(jié)果如下:
疫情
index
2022-07-041518338
2022-07-051950590
2022-07-061924655
2022-07-071825620
2022-07-081768546
......
2022-09-302083183
2022-10-011365015
2022-10-021498437
2022-10-031323310
2022-10-041244449
[93rowsx1columns]
可以看到輸出的實(shí)際上是 Pandas 的 DataFrame 數(shù)據(jù)結(jié)構(gòu),如果我們用 Jupyter 運(yùn)行的話可能更直觀一些。
安裝并運(yùn)行 Jupyter
pip3installjupyter
jupyternotebook
運(yùn)行類似的代碼,結(jié)果如下:

我們還可以進(jìn)一步將其轉(zhuǎn)化為可視化圖表:
importmatplotlib.pyplotasplt
plt.figure(figsize=(15,5))
plt.title("微博「疫情」熱度走勢(shì)圖")
plt.xlabel("時(shí)間")
plt.ylabel("指數(shù)")
plt.plot(df_index.index,df_index['疫情'],'-',label="指數(shù)")
plt.legend()
plt.grid()
plt.show()
結(jié)果如下:

這樣通過(guò)簡(jiǎn)單的幾行代碼我們就可以輕松將某個(gè)詞的熱度走勢(shì)可視化出來(lái)了,繪制成折線圖之后,熱度走勢(shì)一目了然。
更多數(shù)據(jù)
當(dāng)然上面僅僅是冰山一角,GoPUP 集成了各種公開(kāi) API,就像個(gè)爬蟲(chóng)一樣給各種 API 提供了封裝,數(shù)據(jù)可謂是應(yīng)有盡有。
根據(jù) GoPUP 的簡(jiǎn)介,這里面的數(shù)據(jù)包括這些類別:
-
指數(shù)數(shù)據(jù):微博指數(shù)數(shù)據(jù),百度指數(shù)數(shù)據(jù),百度搜索數(shù)據(jù),百度資訊指數(shù),百度媒體指數(shù),百度需求圖譜,百度人群畫(huà)像年齡分布,百度人群畫(huà)像性別分布,百度人群畫(huà)像興趣分布;
-
算數(shù)數(shù)據(jù):算數(shù)指數(shù)數(shù)據(jù),算數(shù)相關(guān)性分析,算數(shù)地域分析,算數(shù)城市分析,算數(shù)年齡分析,算數(shù)性別分析,算數(shù)用戶閱讀興趣分類,谷歌指數(shù)數(shù)據(jù),谷歌指數(shù)數(shù)據(jù),谷歌事實(shí)查證;
-
宏觀數(shù)據(jù):中國(guó)宏觀數(shù)據(jù),中國(guó)宏觀杠桿率數(shù)據(jù),貨幣匯率數(shù)據(jù);
-
利率數(shù)據(jù):Shibor數(shù)據(jù),Shibor報(bào)價(jià)數(shù)據(jù),Shibor均值數(shù)據(jù),LPR數(shù)據(jù);
-
公司數(shù)據(jù):千里馬公司,獨(dú)角獸公司,倒閉公司,商業(yè)特許經(jīng)營(yíng)公司;
-
信息數(shù)據(jù):新聞聯(lián)播文字稿;
-
生活數(shù)據(jù):中國(guó)油價(jià)數(shù)據(jù),汽柴油歷史調(diào)價(jià)信息,調(diào)價(jià)日的地區(qū)油價(jià)歷史數(shù)據(jù);
-
詩(shī)詞數(shù)據(jù):唐代詩(shī)人,唐詩(shī)數(shù)據(jù);
-
影視數(shù)據(jù):實(shí)時(shí)電影票房數(shù)據(jù),單日電影票房數(shù)據(jù),單日影院票房數(shù)據(jù),實(shí)時(shí)電視劇播映指數(shù),實(shí)時(shí)綜藝播映指數(shù),藝人商業(yè)價(jià)值,藝人流量?jī)r(jià)值;
-
全國(guó)高校數(shù)據(jù):全國(guó)普通高等學(xué)校名單,全國(guó)成人高等學(xué)校名單,全國(guó)高等學(xué)校詳情數(shù)據(jù);
-
疫情數(shù)據(jù):網(wǎng)易疫情數(shù)據(jù),丁香園疫情數(shù)據(jù)……
當(dāng)然這個(gè)庫(kù)也在不斷更新,更多詳細(xì)的內(nèi)容大家可以到官方文檔了解下:http://doc.gopup.cn/#/README
有了這些數(shù)據(jù),我們做數(shù)據(jù)分析和可視化就不用再去寫(xiě)爬蟲(chóng)啦,直接拿來(lái)用就好了,簡(jiǎn)直不要太方便!
好了,關(guān)于 GoPUP 就介紹這么多了,大家可以來(lái)試試看吧
審核編輯 :李倩
-
API
+關(guān)注
關(guān)注
2文章
1559瀏覽量
63502 -
數(shù)據(jù)分析
+關(guān)注
關(guān)注
2文章
1470瀏覽量
34781 -
爬蟲(chóng)
+關(guān)注
關(guān)注
0文章
83瀏覽量
7346
原文標(biāo)題:有了這個(gè)庫(kù),這些爬蟲(chóng)都不用親自寫(xiě)了!
文章出處:【微信號(hào):DBDevs,微信公眾號(hào):數(shù)據(jù)分析與開(kāi)發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
Python存儲(chǔ)數(shù)據(jù)詳解
專業(yè)python web編程工具
三種提高Python代碼性能的簡(jiǎn)便方法
TekVPITM新型探頭接口提供了杰出的通用性和簡(jiǎn)便易用性
SPB TV:面向iPhone最簡(jiǎn)便易用的移動(dòng)電視應(yīng)用
Python的幾個(gè)自然語(yǔ)言處理工具介紹
python串口接收數(shù)據(jù)

python接口文件使用說(shuō)明

Python編程用于數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)
Danfo.js提供高性能、直觀易用的數(shù)據(jù)結(jié)構(gòu),支持結(jié)構(gòu)化數(shù)據(jù)的操作和處理
詳談Python的數(shù)據(jù)模型和對(duì)象模型

評(píng)論