第1天|12天搞定Python網絡爬蟲,吃裏爬外?

人力資源部漂亮的小MM,跑來問我:老陳,數據分析和爬蟲究竟是關係呀?說實在的,我真不想理她,因爲我一直認爲這個跟她的工作關係不大,可一想到她負責我負責部門的招聘工作,我只好勉爲其難地跟她說:數據分析,喫裏,爬蟲,爬外,合在一起就是吃裏爬外。

大數據時代,要想進行數據分析,首先要有數據來源,單靠公司那幾條毛毛雨(數據),分析個寂寞都不夠,唯有通過學習爬蟲,從外部(網站)爬取一些相關、有用的數據,才能讓老闆進行商業決策時的有據可依,而你,亦是老闆。

一提到老闆,漂亮的小MM,興奮得不得了,馬上大聲問:你們IT界,最帥的是不是就是那個搞搜索引擎的李老闆?

我儘管有點不服氣,有點不開心,但我能怎麼得,畢竟在網絡爬蟲方面,他(李老闆)的技術比確實強。他懂得用爬蟲技術,每天在海量互聯網信息中進行爬取,爬取優質的信息並收錄在他設定的數據庫中。當用戶在搜索引擎中,輸入關鍵字時,引擎系統將對關鍵詞進行數據分析處理,從收錄的網頁中找出相關網頁,按照一定的排名規則排序並將結果展現給用戶。

一想到排名賺到的money,李老闆一分都不給我,我就跟人力MM說:好了,不跟你扯犢子了,我要跟我的老鐵說網絡爬蟲的原理了,你個吃裏爬外的傢伙,見你的老闆去吧。

1. 爬蟲是什麼

網絡爬蟲又稱網絡蜘蛛、網絡螞蟻、網絡機器等,它按照我們制定的規則,在網絡上爬取數據。爬到的結果中會有HTML代碼、JSON數據、圖片、音頻或視頻。程序員根據實際要求,對數據進行過濾,提取其中有用的,進行存儲。

說白點,就是用Python編程語言模擬瀏覽器,訪問指定網站,對其返回結果,按規則進行篩選並提取自己需要的數據,存放起來使用,以供使用。

看過我《第10天 | 12天搞定Python,文件操作 》和《第11天 | 12天搞定Python,數據庫操作》的老鐵,應該知道,數據常存在文件或數據庫中。

 

2. 爬取流程

用戶通過瀏覽器訪問網絡數據的方式:打開瀏覽器->輸入網址->瀏覽器提交請求->下載網頁代碼->解析成頁面。

爬蟲編程,指定網址,模擬瀏覽器發送請求(獲取網頁代碼)->提取有用的數據->存放於文件或數據庫中。

 

爬蟲編程,推薦用Python,是因爲Python爬蟲庫簡單易用,在Python內置環境中的,就可以滿足大多數功能。它可以:

(1) 用http庫向目標站點發起請求,即發送一個Request(包含請求頭和請求體等);

(2) 對服務器返回的Response,用內置的庫(html、json、正則表達式)就進行解析

(3) 將所需數據存儲到文件或數據庫當中。

如果Python內置的庫不夠用的話,可以用pip install 庫名,快速下載第3方庫並進行使用。

3. 爬點定位

在編寫爬蟲代碼的過程中,經常需要指定爬取的節點或路徑。如果我告訴你,Chrome瀏覽器,就可以快速獲取節點或路徑的話,你會不會馬上看一下電腦是否安裝了?

會的話,那就對了,不會的,趕緊去安裝吧。

在頁面中,按下鍵盤F2鍵,可顯示源代碼。鼠標選中你要獲取的節點,右鍵【檢查】就可定位到代碼中,右鍵代碼,選擇【Copy】-【Copy Selector 】或【Copy XPath】便可複製節點或路徑的內容。

 

好了,有關爬蟲原理的內容,老陳講完了,如果覺得對你有所幫助,希望老鐵能轉發點贊,讓更多的人看到這篇文章。你的轉發和點贊,就是對老陳繼續創作和分享最大的鼓勵。

一個當了10年技術總監的老傢伙,分享多年的編程經驗。想學編程的朋友,可關注今日頭條:老陳說編程。我將分享Python,前端(小程序)和App方面的乾貨。關注我,沒錯的。

#Python##網絡爬蟲##程序員##爬蟲#

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章