我們在編程教室中寫過不少使用 API 開放接口 的案例,比如:
查詢書影音的 豆瓣 (爬蟲+網站開發實例:電影票比價網)
查詢股票的 tushare (想用 Python 做數據分析?先玩玩這個再說)
翻譯單詞的 詞霸 (【每周一坑解答】自動翻譯)
用來做人工智能的 騰訊AI (調教屬于你的“賈維斯”)
但以上這些都不是我今天要說的。今天要說的這個接口,之所以稱為“強大”,因為 它返回的內容里蘊含了未知的巨大能量,大到可以輕松毀滅宇宙 N 次……
沒錯,這就是 Marvel 向開發者開放的 API 。
官網地址:https://developer.marvel.com/
數據涵蓋的內容主要是 Marvel 相關的漫畫作品信息,包含:
1491 個 角色
43759 本 漫畫
6200 個 創作者
10713 個 系列
96740 個 故事
75 個 事件
以及這幾樣數據之間的相互關聯關系。比如你可以通過一個角色查到其所出場的事件,或者一個創作者所參與過的角色。
我做了一個簡單的小演示,可通過名字查詢相關的角色:
以及通過角色 ID 查詢其出現的漫畫:
Marvel API 不是完全公開訪問,需要先申請 ,不過沒有任何門檻(只要看得懂英文)。使用接口時,常規操作是按照官方提供的方式, 將申請獲得的公鑰、密鑰加上時間戳進行 MD5 加密,作為權限的驗證放在參數里,通過 GET 方式進行請求 (可以用 requests)。
而我這里用了一個第三方封裝好的 Python 庫 marvel ,省了不少工作,所以核心代碼很簡單:
import marvel from IPython.display import Image, HTML, display PUBLIC_KEY = "你的公鑰" PRIVATE_KEY = "你的私鑰" m = marvel.Marvel(PUBLIC_KEY, PRIVATE_KEY) characters = m.characters name = input("請輸入要查詢的英雄(英文,可只輸入開頭):") print("搜索中...") all_characters = characters.all(nameStartsWith=name)
第三方庫地址:https://pypi.org/project/marvel/
Marvel 的這個 API,我覺得是個非常好的練手工具。作為一個學習者,你可以從使用中學到:
公鑰、私鑰、MD5加密的使用(接口權限驗證)
API的調用,參數傳遞,JSON返回數據的處理
多維度數據的整理分析
還有,英文文檔的閱讀
讓我有點遺憾的是,數據中并沒有太多英雄角色相關的數據,不然就更有意思了。
對于這個接口的應用,我有幾個思路供參考:
做一個愛好者網站或者小程序,對數據提供檢索和整理展示
數據分析,看看哪些角色最受歡迎,哪個作者最勤奮,角色之間的相互關系等
小游戲,比如集卡之類。(當然,非商業的)
早前我也推薦過豆瓣的 API,不過豆瓣現已把開發者頁面下線,無法查看具體接口說明,之后會不會對外關閉也很難說了。Marvel API 相比豆瓣 API 來說要復雜一些,主要是權限認證的部分。另外,在使用時還有一些要求,如果你之后將作品對外展示,請務必注意:
請求上限 1000次/天(但在我的個人頁面上看到是 3000),并且需要設定請求來源網址(referrer)。建議通過自建緩存,以減少請求量
需要在所有用到接口數據的頁面上標注 "Data provided by Marvel. 2014 Marvel"
需提供到 Marvel 官網的反鏈( http:// marvel.com)
返回接口里的圖片 URL 不是直接可訪問的,需添加上所需圖片尺寸和文件類型,拼出完整路徑
經常有同學說學了編程之后不知道去開發點什么。其實可以做的東西比比皆是,需要有發現需求的眼睛。暫時沒有這方面敏感度也不要緊, 多看看我們的文章,跟著我們做 。如果你碰巧又是漫威粉,那就更應該嘗試一下了。之后我們也會在此數據基礎上開發一些案例,敬請期待。(立個Flag:爭取跟《復聯4》同步上線)
文中所使用的代碼已上傳,獲取代碼請在公眾號( Crossin的編程教室 )里回復關鍵字 漫威
════
其他文章及回答:
學編程:如何自學Python | 新手引導 | 一圖學Python
開發案例:智能防擋彈幕 | 紅包提醒 | 流浪地球
歡迎搜索及關注: Crossin的編程教室
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/43478.html
摘要:據說此部之后,不少影迷熟知的角色演員就要離開漫威世界的熒幕了。換句話說用數據說話,誰才是漫威宇宙中著墨最多的人物我之前做了個小調查僅就我這邊的采樣來看,鋼鐵俠在國內是無法撼動的人氣王。 復聯4上映了!這次比美國還早了兩天。當然,我還沒看,不會給你們劇透,當然也不想不劇透。 這一部不僅是滅霸這一線劇情的結局,也被認為漫威第三階段的收官之作。據說此部之后,不少影迷熟知的角色(演員)就要離開...
摘要:下面是一個例子這個庫要求你至少安裝了和其中的一個,這可能意味著,在大多數主機提供商提供的主機上它可能用不了。借助它,你可以忘記如何書寫乏味的有一個姊妹庫叫,是一個基于的實現。 showImg(http://segmentfault.com/img/bVbJml); 作為一個PHP開發者,現在是一個令人激動的時刻。每天有許許多多有用的庫分發出來,在 Github 上很容易發現和使用這些庫...
摘要:在以下簡稱和以下簡稱開發團隊都工作過,這篇文章給出這兩款產品一些技術層面的比較。標準開發方式和的雖然看起來都是風格,但實現技術不同。而的標準則是基于和協作而成的。 如果您對SAP S/4HANA for Customer Management(以下簡稱S4CRM)和SAP Cloud for Customer(以下簡稱C4C)不甚熟悉,那我建議您可以先瀏覽我之前寫的這兩篇微信公眾號文章...
摘要:在以下簡稱和以下簡稱開發團隊都工作過,這篇文章給出這兩款產品一些技術層面的比較。標準開發方式和的雖然看起來都是風格,但實現技術不同。而的標準則是基于和協作而成的。 如果您對SAP S/4HANA for Customer Management(以下簡稱S4CRM)和SAP Cloud for Customer(以下簡稱C4C)不甚熟悉,那我建議您可以先瀏覽我之前寫的這兩篇微信公眾號文章...
閱讀 3456·2021-09-08 10:46
閱讀 1186·2019-08-30 13:17
閱讀 2362·2019-08-30 13:05
閱讀 1207·2019-08-29 15:29
閱讀 2887·2019-08-29 11:31
閱讀 538·2019-08-26 12:13
閱讀 1535·2019-08-26 11:42
閱讀 1828·2019-08-23 18:37