學習爬蟲51天,我不止成功獲取豆瓣top250信息,還會建excel了!

2020-12-11 罐頭往事

昨天定義了所有找到內容的規則,下一步就是如何應用、對每個找到的內容進行解析。

同樣的,也是參照獲取影片詳細超連結的辦法添加圖片。

後面添加每個內容時,都要考慮其特殊性,比如添加片名,就要考慮其有可能既有中文名,又有英文名,所以再給其加個條件語句。

定義兩個變量 :中文標題 ctitles ,外標題 otitles。

注意要去掉英文標題前面的斜槓,使用 replace 將斜槓替換成空格。

另外,添加影片概述,要考慮有的片子沒有概述的情況。

添加影片相關內容時,要去掉一些不要的符合以及空格。

最後,使用 datalist.append(data) ,把處理好的一部電影信息放入 datalist 即可。

列印一下,看看效果。

可以清楚的看到電影連結、圖片連結、電影中文名、外國名、評分、評價人數、一句話概述、相關信息介紹等內容全部都獲取到了。

當然,也能看到還有些符號沒有去除乾淨,這個問題不大。

至此,數據解析、提取工作,成功突破!

總結:

整個標籤解析工作,使用的是 Beautiful Soup 庫,它能提供一些簡單的、Python式的用來處理導航、搜索、修改分析樹等功能,通過解析文檔為用戶提供需要抓取的數據。

我們需要的每個電影都在一個<div>的標籤中,且每個div標籤都有一個屬性 class = 「item」。

soup = BeautifulSoup(html, "html.parser")這個語句,就是創建 BeautifulSoup 對象,html為頁面內容,html.parse 是一種頁面解析器。

for item in soup.find_all("div", class_="item"):這個循環,是為了找到能夠完整提取出一個影片內容的項,即頁面中所有樣式是item類的div。

所有內容解析後,使用了正則表達式進行提取。

正則表達式,通常被用來檢索、替換那些符合某個模塊(規則)的文本。

Python 中使用 re模塊 操作正則表達式。

這種一環套一環的感覺,讓我想起了當初和工友搬磚的日子。

下面就該研究如何保存數據了。

保存數據一般有兩種方式:一種是在excel裡面保存,另一種是在資料庫進行保存。

先說第一種。

使用excel表格保存,就需要利用 Python庫 xlwt 將抽取的數據 datalist 寫入 excel表格。

基本思路是以 utf-8 編碼創建一個excel對象,再由它來創建一個sheet表,接下來往單元格裡寫數據,最後保存。

這裡可以將workbook理解成一個excel文件,而worksheet理解成文件中的一個表單。

worksheet中的單元格,本質上就是一個矩陣。

可以看到左面多了一個文件 student.xls ,說明我們創建成功了。

然後這裡老師留了個小作業,讓結合以前學的九九乘法表,用十分鐘時間,將九九乘法表保存在 student.xls 中。

機智如我,用了15分鐘,嗯,果然還是失敗了,鬱悶。

哎,作為40歲的老男人,果然最缺少的,就是靈性了。

相關焦點

  • [Python從零到壹] 六.網絡爬蟲之BeautifulSoup爬取豆瓣TOP250電影詳解
    講到這裡,我們第一頁的25部電影信息就爬取成功了,而該網頁共10頁,每頁顯示25部電影,如何獲取這250部完整的電影信息呢?這就涉及到連結跳轉和網站的翻頁分析。start=225&filter=它是存在一定規律的,top250?start=25表示獲取第2頁(序號為26到50號)的電影信息;top250?start=50表示獲取第3頁(序號為51到75號)的電影信息,依次類推,我們寫一個循環即可獲取完整的250部電影信息。
  • 誰說Java不能搞爬蟲,武哥帶你一起爬取豆瓣電影Top250
    閒扯幾句大家好,本期我準備了一篇爬蟲的教程,也是從最基礎的網頁爬蟲開始,給大家講講網頁爬蟲的小技巧。看到網上很多的爬蟲代碼都是基於python的,那作為一名Java工程師的我就有點不服氣了,Java難道不能做爬蟲嗎?我想寫個爬蟲是不是還得先學會python?
  • Python 爬蟲分析豆瓣 TOP250 告訴你程式設計師業餘該看什麼書?
    作者 | 周志鵬責編 | 郭   芮本文以爬取豆瓣TOP250圖書為例,但重點並不在案例本身,而在於梳理編寫爬蟲的邏輯和鏈路關鍵點,幫助感興趣的童鞋逐漸形成自己編寫爬蟲的方法論(這個是最最最關鍵的以豆瓣TOP250圖書為例,爬蟲的第一步,就是「審查元素」,找到我們想要爬取的目標數據及其所在網址。豆瓣TOP250圖書網址:https://book.douban.com/top250
  • 一個入門級python爬蟲教程詳解
    主要用於對鬆散的海量信息進行收集和結構化處理,為數據分析和挖掘提供原材料。今日t條就是一隻巨大的「爬蟲」。爬蟲由URL庫、採集器、解析器組成。流程如果待爬取的url庫不為空,採集器會自動爬取相關內容,並將結果給到解析器,解析器提取目標內容後進行寫入文件或入庫等操作。
  • 小叮噹高級爬蟲(二):Scrapy創建項目「五部曲」獲取豆瓣電影信息
    看一部低端的電影浪費我們的人生,還不如去玩一局LOL活得開心,因此,小叮噹選擇的是」好於100%-90%"的電影信息。那麼,我下次想找電影看呢?難道還需要再來訪問一遍豆瓣,來獲得這些電影信息?當然是不用,下面,小叮噹就為大家分享,如何使用Python中的Scrapy框架,來獲取豆瓣的電影信息。還不了解Scrapy的夥伴們,可以去看下「小叮噹高級爬蟲(一):爬蟲利器Scrapy」。
  • 最簡單的Python爬蟲,僅3步11行代碼爬取豆瓣電影排名
    提到網絡爬蟲,很多人望而卻步,覺得非常難,其實非如此,哪怕沒有爬蟲基礎,也可以寫出一個簡單的爬蟲。萬丈高樓平地起,今天分享一個最簡單的爬蟲,目的是通過案例,使大家對爬蟲有一個直觀的認識。第一步:確定目標爬蟲的第一步是要確定爬取的目標,沒有目標就沒有方向,更無從寫代碼。
  • excel實現網頁「爬蟲」
    excel實現網頁「爬蟲」最近python語言很火,Python中的爬蟲最火,就是通過技術手段獲得需要的資源,那我也用excel蹭一波熱度,使用excel實現網頁「爬蟲」。     第一步:在【數據】選項-【獲取外部數據】
  • Python爬蟲,批量獲取知網文獻信息
    於是,反手寫一個爬蟲,批量獲取基本信息,豈不美哉?在開始這個項目之前,我抱著不重複造輪子的心態,尋思著去Github先找找。結果發現基本上都是幾年前的項目,現在早已不能使用。最後證實了,靠別人不如靠自己,擼起袖子就開幹!1. 爬蟲基礎網絡爬蟲就是模擬瀏覽器發送網絡請求,接收請求響應,一種按照一定的規則,自動地抓取網際網路信息的程序。
  • 聊聊學python轉行、具體學習方法、自學python用於辦公、寫爬蟲等...
    Python這幾年都挺火的,比如說應用於數據分析、機器學習、自動化辦公、寫爬蟲採集數據等等……因為我之前發過幾篇和python有關的推文,所以不止一個朋友加私信問我說,你是怎麼學的,能不能談一談學習的經驗和技巧。
  • 進階版python獲取天氣信息——爬蟲入門
    瀏覽器基於這些問題,今天我們就來個進階版的獲取天氣信息方法——爬蟲獲取,同時該例子也是理解入門爬蟲的最好例子。1.爬蟲先來講講爬蟲是什麼?爬蟲,又叫網絡蜘蛛,是一個探測的機器。它模擬人的行為去各個網站溜達,看到有用的信息就想自己下載下來保存一份。簡答一句話就是在網頁上提取我們想要的信息。
  • python爬蟲16 | 你,快去試試用多進程的方式重新去爬取豆瓣上的電影
    鎖會讓多線程顯得有點雞肋特別是在 CPU 密集型的代碼下多線程被 GIL 鎖搞得效率不高特別是對於多核的 CPU 來說如果想要充分利用 CPU 還是用多進程吧這樣我們就可以做到並行爬取提高了爬取的效率那麼,怎麼玩多進程呢恩接下來就是學習
  • 零基礎不知道如何做Python爬蟲,這是一份簡單入門的教程!
    隨著網際網路的數據爆炸式增長,而利用Python爬蟲我們可以獲取大量有價值的數據:1.爬取數據,進行市場調研和商業分析爬取知乎優質答案,篩選各話題下最優質的內容; 抓取房產網站買賣信息,分析房價變化趨勢、做不同區域的房價分析;爬取招聘網站職位信息,分析各行業人才需求情況及薪資水平
  • 爬蟲:《蟻人2》豆瓣影評爬蟲+簡單情感分析+詞雲
    (word_cloud)36plt.axis('off')37plt.show()關鍵詞後三個是之後文本分析用的。,日期,有用數,評論正文,雖說主頁顯示45576條,但其實可見的只有500條,每頁是20條短評,多一條都不給,手動去點,點到25頁之後就沒有任何信息了。
  • Python爬蟲實戰2:通過天行數據API獲取當天地級市空氣品質數據
    微信公眾號:學點啥玩點啥小白友好型Python爬蟲實戰2:通過天行數據API獲取當天地級市空氣品質數據上一次小編學習了基礎爬蟲:爬蟲豆瓣top250數據,小編感覺其實基礎爬蟲最難的地方在於解析網頁,有沒有可以不解析網頁就獲取數據的辦法呢?懷著這樣的疑問小編學習了API的相關知識。
  • 入門Python爬蟲——獲取數據篇
    作者: 李菲 來源:人工智慧學習圈在如今的大數據時代,相信大家都對Python一詞有所耳聞。而Python爬蟲,簡單來說,即通過Python程序獲取對我們有用的數據。首先,在爬蟲中最常見的代碼便是:即引入requests庫,是一切爬蟲程序的基礎。在Python中,有許多庫可以供我們使用。這也是Python相對於其它程式語言的一大優勢。
  • Python 爬蟲入門
    從而爬蟲工程師、數據分析師、大數據工程師的崗位也越來越受歡迎。爬蟲是 Python 應用的領域之一。有 Python 基礎對於學習 Python 爬蟲具有事半功倍的效果。就像學英語一樣,一個對英語一概不通的人聽完別人讀英語,自己也能讀出來,但要把英語讀好,學好音標非常有必要。
  • 1小時入門 Python 爬蟲
    從而爬蟲工程師、數據分析師、大數據工程師的崗位也越來越受歡迎。爬蟲是 Python 應用的領域之一。有 Python 基礎對於學習 Python 爬蟲具有事半功倍的效果。就像學英語一樣,一個對英語一概不通的人聽完別人讀英語,自己也能讀出來,但要把英語讀好,學好音標非常有必要。
  • python爬蟲入門實戰!爬取博客文章標題和連結!
    最近有小夥伴和我留言想學python爬蟲,那麼就搞起來吧。準備階段爬蟲有什麼用呢?舉個最簡單的小例子,你需要《戰狼2》的所有豆瓣影評。最先想的做法可能是打開瀏覽器,進入該網站,找到評論,一個一個複製到文本中,保存,翻頁,接著複製,直到翻到最後一頁。
  • 網絡爬蟲違法?扯!繼續學習我的第一個爬蟲
    隨著資訊時代的迭代更新,人工智慧的興起,Python程式語言也隨之被人們廣泛學習,Python數據分析、Python web全棧、Python自動化運維等等都很受歡迎,其中還包括了Python爬蟲。但是很對人覺得Python爬蟲是違法的行為,也在懷疑自己到底要不要學爬蟲,之前有一篇文章特別火,就是《 只因寫了一段爬蟲,公司200多人被抓!》
  • 不用Python,Excel輕鬆抓取豆瓣TOP250
    我們依次獲取前三個頁面的網址可以發現它們之間的規律,每個網址除了中間的數字,其它地方都是一樣的,數字從0/25/50,以25遞增(每個頁面的電影數),一共10個頁面。