數據分析系列——數據分析入門(二)

數據分析系列——數據分析入門(二)

1 人贊了文章

本系列學習內容來自DC學院(首頁-專業的大數據在線課程學習平台-DC學院 :邀請碼UZK98M),非原創,特此註明。一方面,幫助自己理清學習框架;另一方面,課程有時間限制,做好筆記,以便後續繼續學習。第一次付費學習的課程,必須認真!


註:默認已經成功安裝Anoconda,Jupter notebook可以使用

基於API的爬蟲

1.基於API爬蟲的一般步驟

(1)在網站註冊開發者賬戶用戶名,獲得開發者秘鑰

(2)在API幫助文檔中找到自己需要的API,確定API請求的限制次數,確認調用API需要使用的參數

(3)聯網狀態下,編寫代碼正確調用API

(4)從API返回內容(JSON)中獲取所需屬性

(5)將獲取的內容存儲到本地

豆瓣API的說明

豆瓣API說明

豆瓣電影條目API說明

通過API來爬取豆瓣電影的評分

#利用python讀取urlimport urllib.request as urlrequesturl_visit = https://api.douban.com/v2/movie/26387939crawl_content = urlrequest.urlopen(url_visit).read()#解析JSON代碼import jsonjson_content = json.loads(crawl_content.decode(utf8)rating = jason_content[rating][average]#將數據存儲到本地id = 26387939with open("movie_score.txt", "a") as outputfile: outputfile.write("{} {}
".format(id, rating))#"a"表示在文件後面添加,"w"表示新建文件

獲取多部電影的評分

import urllib.request as urlrequestimport jsonid_list=[26387939,11803087,20451290]#創建一個寫入評分的文件 douban_movie_rank.txtwith open("douban_movie_rank.txt","w") as outputfile: for id in id_list: url_visit = https://api.douban.com/v2/movie/{}.format(id) crawl_content = urlrequest.urlopen(url_visit).read() json_content = json.loads(crawl_content.decode(utf8)) rank=json_content[rating][average] outputfile.write("{} {}
".format(id, rank))

根據名字爬取電影評分

import urllibimport urllib.request as urlrequestimport jsonname_list=[異形:契約,摔跤吧!爸爸,速度與激情8]for name in name_list: #這裡需要將中文名轉換為網頁鏈接中能夠讀取的編碼 id=urllib.parse.quote(name) url_visit= https://api.douban.com/v2/movie/search?q={}.format(id) crawl_content = urlrequest.urlopen(url_visit).read() json_content = json.loads(crawl_content.decode(utf8)) rank=json_content[subjects][0][rating][average] print( "{} {}
".format(name,rank))

基於API的爬蟲代碼比較簡單,可實現的功能有限。實際應用中,更多的是基於網頁的爬蟲,下一節進行介紹。

推薦閱讀:

手游數據分析的必備思路(二)
如何靠數據分析「上位」?——一位銀行業務分析專家的實踐
一個簡單實例帶你輕鬆入門EXCEL數據分析
誰說菜鳥不會數據分析-工具篇
馬云:數據分析師會被人工智慧替代,你怎麼看?

TAG:數據分析師 | 數據分析 | 大數據分析 |