Python爬取豆瓣電影——Top250,威力之大

2020-10-31 曉曉編程

前言:

科技在不斷進步,人們需求也追求多樣化,尤其網際網路給我們的生活帶來了翻天覆地的變化,尤其Python,能讓我們的生活中的做事效率大幅提高。下面看看它的威力有多大?

爬取豆瓣電影Top250,在家看熱門電影而且不用會員充值



  1. 解析數據
  2. 我們需要使用BeautifulSoup這個功能模塊來把充滿尖括號的html數據變為更好用的格式。
  3. from bs4 import BeautifulSoup這個是說從(from)bs4這個功能模塊中導入BeautifulSoup,是的,因為bs4中包含了多個模塊,BeautifulSoup只是其中一個。
  4. soup = BeautifulSoup(html.text, 'html.parser')這句代碼就是說用html解析器(parser)來分析我們requests得到的html文字內容,soup就是我們解析出來的結果。
  5. For循環
  6. 豆瓣頁面上有25部電影,而我們需要抓取每部電影的標題、導演、年份等等信息。就是說我們要循環25次,操作每一部電影。for item in soup.find_all('div',"info"):就是這個意思。
  7. 首先我們在豆瓣電影頁面任意電影標題【右鍵-檢查】(比如「肖申克的救贖」),打開Elements元素查看器。

有對Python感興趣的小夥伴?小編整理【一套Python電子文檔及源碼】,感興趣者可以關注小編後私信「Python」(是關注後私信哦)反正閒著也是閒著呢,不如學點東西啦

  1. 獲取電影標題
  2. title=item.div.a.span.string中item代表的是上面圖片中的整個div元素(class='info'),那麼它下一層(子層)div再下一層a再下一層span(class='title'的)裡面的文字「肖申克的救贖」就是我們需要的電影標題,所以是.div.a.span然後取內容.string


  1. 獲取年份數字
  2. 經過上面的處理,我們得到了乾淨的1994 / 美國 / 犯罪 劇情,我們只要截取前面4個數字就可以了,也就是從第0個字符截取到第4個字符之前(0,1,2,3),我們使用year=yearline[0:4]就可以實現。
  3. 輸出和複製到excel
  4. print(title,'\t',year),中間的'\t'是制表符,我們可以直接滑鼠選擇output輸出的內容,右鍵複製,然後打開excel新建空白文件,然後選擇合適的表格區域範圍,【右鍵-選擇性粘貼】彈窗中選擇Unicode文本,就可以把數據粘貼到excel表格中。



3. 採集更多電影

上面代碼只是幫我們輸出第一頁25部電影信息,要採集第二頁可以把requests請求的連結地址更換一下html=requests.get('https://movie.douban.com/top250?start=25'),每頁25個遞增,第三頁就是start=50,以此類推。

最後把全部250個電影數據反覆10遍粘貼到Excel表格就可以了。

當然我們有更好的方法,比如利用for循環自動採集10個頁面的數據

4.生成統計數據

我們把採集到的數據粘貼到Excel文件中,最頂上插入一行【影片名、年份】


Excel數據

接下來我們利用這些數據研究一下哪些年盛產好電影。

如上圖,點擊B欄全選這一列。然後選擇【插入-數據透視表】


插入數據透視表

然後彈窗中選擇【新工作表】,其他保留默認,點確定。

拖拽到行

同樣再拖拽到值裡面。

拖拽到值

然後點擊表格裡面的【求和項:年份】,再點擊【欄位設置】,彈窗中選擇【計數】,然後確認,就能統計出每個年份上映的電影數量。

很多年份都是1或2,但表格滾動到下面就會看到1994、1995哪些年上映的電影比較多。


最終統計圖如下,可以清楚的看到全球最佳電影的年份分布情況,可以得到一些結論,比如上個世紀90年代初開始電影製作水平有了明顯的提升,至90年代中期以後,雖然一直處於較高水平,但沒有太大幅度的提高了;2010年貢獻了最多數量的好電影,此後至今的8年雖然佳片不斷(12年除外),但整體走低,2017年觀眾認可度達到最低點。


利用Python獲取了熱門電影可以觀看,自己也了解了網際網路知識辦公技能,做到了高效辦公,提高了工作效率。

相關焦點

  • 大佬用Python爬取豆瓣電影——Top250,驚呆啦
    前言:網際網路行業在迅速發展,尤其是程式語言「Python」,在各大行業都居於重要位置,有了它人們的辦公效率大大提高,下面看看它的威力有多大用Python爬取豆瓣電影——top250,連最近最火的《我和我的家鄉
  • 某大佬直接用Python爬取豆瓣top250,簡單粗暴
    首先需要安裝好爬蟲需要用到的python庫 開發工具使用的是pycharm1:request 網絡請求模塊2:lxml 取數據的模塊 這裡用的是xpath 沒有用bs43.xlwings 對Excel進行讀寫的模塊如果安裝失敗 或者安裝緩慢 可以參考之前的博客 將pycharm鏡像更換為清華大學鏡像一鍵直達 更換鏡像
  • Python爬取豆瓣電影評分Top250
    抓取第一頁的電影信息抓取信息如下:上一節已經學習過了 —>這是傳送門本節重點在如何抓取下一頁面的信息,使250個電影信息全部收集到。多頁抓取,搜集完整250部電影信息代碼寫法根據每個網頁的特點不同而不同,發現豆瓣網頁翻頁是通過/top250?start=xxx&filter= 更改xxx的值實現的,不像某些網站採用異步操作。那寫一個while循環即可。
  • 今天帶你一起爬取豆瓣電影Top250
    先打開我要爬取數據的網頁:豆瓣電影Top250我們先來分析一下這個網頁寫bug,調bug唄打開網頁豆瓣電影Top250按下 「f12」,看到下面這個界面 Document document = Jsoup.connect("http://movie.douban.com/top250?
  • 利用Python 多協程和隊列爬取豆瓣圖書
    ,創建多任務執行保存為CSV文件格式私信小編01即可獲取Python學習資料爬取豆瓣圖書利用多協程和隊列,來爬取豆瓣圖書Top250(書名,作者,評分)並存儲csv 豆瓣圖書:https://book.douban.com/top250?
  • 完全小白篇-用python爬取豆瓣影評
    完全小白篇-用python爬取豆瓣影評打開豆瓣電影隨機電影的所有影評網頁跳轉邏輯分析影評內容獲取方法逐一正則提取影評針對標籤格式過於多樣的處理針對提出請求的頻率的限制存儲方式(本次sqlite3)附:豆瓣短評的正則提取邏輯
  • 零基礎Python爬蟲實戰:豆瓣電影TOP250
    我們曾經抓取過貓眼電影TOP100,並進行了簡單的分析。但是眾所周知,豆瓣的用戶比較小眾、比較獨特,那麼豆瓣的TOP250又會是哪些電影呢?我在整理代碼的時候突然發現一年多以前的爬蟲代碼竟然還能使用……那今天就用它來演示下,如何通過urllib+BeautifulSoup來快速抓取解析豆瓣電影TOP250。
  • Python爬蟲快速入門,靜態網頁爬取
    一、數據解析在爬取之前,我們需要檢測下響應狀態碼是否為200,如果請求失敗,我們將爬取不到任何數據:import requestsre = requests.get(&39;)if re.status_code == 200: print
  • 最簡單的Python爬蟲,僅3步11行代碼爬取豆瓣電影排名
    第一步:確定目標爬蟲的第一步是要確定爬取的目標,沒有目標就沒有方向,更無從寫代碼。我們的目標就是爬取豆瓣上電影排行,並且只爬取第一頁的數據。只要爬取到了第一頁,後面的頁就很容易實現了。這裡使用的瀏覽器是谷歌瀏覽器,也可以使用火狐瀏覽器,其他的不推薦。
  • Python 爬蟲實戰入門(上)
    官網可以進行下載https://www.python.org/downloads/release/python-365/安裝的時候注意選中把python3.6添加到path,然後點擊Customize installation
  • Python數據採集案例(3):豆瓣電影TOP250採集
    實現目標本案計劃實現:通過網絡請求,獲取豆瓣電影TOP250的數據,並存儲到Json文件中。確定數據所在Url在Chrome瀏覽器中打開豆瓣電影TOP250,其Url為:https://movie.douban.com/top250。
  • 擺脫劇荒:教你用Python爬取豆瓣電影最新榜單
    作者 | 吹牛Z 來源 | 數據不吹牛【導讀】本文以豆瓣電影(非TOP250)為例,從數據爬取、清洗與分析三個維度入手,詳解和還原數據爬取到分析的全鏈路。閱讀全文大概需要5分鐘,想直接看結果或下載源碼+數據集的旁友可以空降到文末。旁友,暑假,已經過了一大半了。
  • 網絡爬蟲——爬取豆瓣圖書
    作者:徐浩 來源:人工智慧學習圈3.2.1 目標目標地址:https://book.douban.com/top250?start=0任務:爬取豆瓣圖書TOP250,及其『書名』、『出版信息』、『評分』、『評價人數』四個數據3.2.2 分析URL首先先打開目標地址對url進行分析觀察第一頁豆瓣圖書如下:
  • 上映26年後,周星馳的《九品芝麻官》終於進入「豆瓣電影top250」
    而他的《功夫》,在上映之初雖然票房大爆,可是在口碑上卻很一般,被認為只是一部粗淺的喜劇。可是現在再回頭來看,《功夫》早已經成為喜劇片裡最巔峰的存在。《九品芝麻官》登上豆瓣top250,經歷了整整26年而今天要跟大家說的這部電影,也是周星馳眾多作品裡最被低估的存在。可是經過26年之後,終於在今年強勢殺入豆瓣top250榜單,它就是《九品芝麻官》。
  • Python 正則表達式實戰案例講解:爬取豆瓣數據
    t=1今天給大家展示Python中正則表達式在爬蟲中的應用,並用xlwt模塊存入到excel中,掌握這個技能後,就能從一些簡單的網站爬取想要的數據信息並存入到自己的資料庫中了。表達式中的普通字符,在匹配一個字符串的時候,匹配與之相同的一個字符。
  • Python爬蟲框架:scrapy爬取迅雷電影天堂最新電影
    進入頁面是列表的形式就像豆瓣電影一樣電影信息電影內容劇情電影下載地址分析完成之後就可以首先編寫 items.py文件好的,發現直接返回正常的網頁也就是我們要的網頁,說明該網站沒有反爬機制,這樣我們就更容易爬取了然後通過xpath定位頁面元素,具體就不再贅述,之前的scarpy教程中都有 繼續編寫爬蟲文件
  • 如何利用python爬蟲爬取各大網站VIP電影?小白都能看懂
    環境:windows python3.7文末有最新python資料下載地址以及視頻 思路:1、先選取你要爬取的電影2、用vip解析工具解析,獲取地址3、寫好腳本,下載片斷>4、將片斷利用電腦合成需要的python模塊:第一個模塊不要安裝,第二個模塊需要安裝1、from multiprocessing import Pool
  • 不用Python,Excel輕鬆抓取豆瓣TOP250
    之前寫了篇Python批量爬取網頁數據的文章,後來發現Excel隨著版本的迭代,已經完全支持多頁面抓取數據了,不用擼代碼,點點滑鼠就能抓取數據,讓我們一起看看吧~網頁解析在抓取數據之前,先對網頁進行一下解析,下圖中是豆瓣TOP250初始頁面,拉到最底部可以發現一共有10個頁面,每個頁面25部電影,一共250部電影。
  • python爬蟲學習筆記:XPath語法和使用示例
    >幾種解析方式的性能對比爬取豆瓣圖書TOP250爬取的例子直接輸出到屏幕。需求分析:(1)要爬取的內容為豆瓣圖書top250的信息,如下圖所示:(2)所爬取的網頁連結: https://book.douban.com/top250?
  • python爬取數據存入資料庫
    昨天本來寫了一篇關於python爬取的文章,結果沒通過,正好今天一起吧。用python同時實現爬取,和存入資料庫,算是複習一下前面操作資料庫的知識。1、準備工作既然是爬取,那自然要連接到爬取的頁面,所以需要requests庫。