您好,登錄后才能下訂單哦!
本文實例講述了Python3爬蟲相關入門知識。分享給大家供大家參考,具體如下:
在網上看到大多數爬蟲教程都是Python2的,但Python3才是未來的趨勢,許多初學者看了Python2的教程學Python3的話很難適應過來,畢竟Python2.x和Python3.x還是有很多區別的,一個系統的學習方法和路線非常重要,因此我在聯系了一段時間之后,想寫一下自己的學習過程,分享一下自己的學習經驗,順便也鍛煉一下自己。
一、入門篇
這里是Python3的官方技術文檔,在這里需要著重說一下,語言的技術文檔是用來查的,不是用來學習的,真的沒必要把文檔背下來,這樣學習效率真的很低,不如片學邊做,在實踐中才會學到東西,不然即使你背會了文檔,你仍然很難做出什么項目來,我當初就是在這上面,走了很多彎路,在這里推薦W3cscjool里面的教程非常不錯,學習與實踐相結合。
1. 少廢話,先看東西
第一個例子:爬取知乎首頁源碼。
#-*-coding:utf-8 -*- import urllib.request url = "http://www.zhihu.com" page_info = urllib.request.urlopen(url).read() page_info = page_info.decode('utf-8') print(page_info)
運行結果:
運行之后,在IDLE shell里面知乎網站首頁的源代碼就會被讀出來啦Blahblahblah~~~
爬蟲定義:
網絡爬蟲(Web Spider),又被稱為網頁蜘蛛,是一種按照一定的規則,自動地抓取網站信息的程序或者腳本。
簡介:
網絡蜘蛛是一個很形象的名字。如果把互聯網比喻成一個蜘蛛網,那么Spider就是在網上爬來爬去的蜘蛛。網絡蜘蛛是通過網頁的鏈接地址來尋找網頁,從 網站某一個頁面開始,讀取網頁的內容,找到在網頁中的其它鏈接地址,然后通過這些鏈接地址尋找下一個網頁,這樣一直循環下去,直到把這個網站所有的網頁都抓取完為止。
爬蟲流程:
①先由urllib的request打開Url得到網頁html文檔——②瀏覽器打開網頁源代碼分析元素節點——③通過Beautiful Soup(后面會講到)或則正則表達式提取想要的數據——④存儲數據到本地磁盤或數據庫(抓取,分析,存儲)
urllib和urllib2
python2.x里urllib2庫,在python3.x里,urllib2改名為urllib,被分成一些子模塊:urllib.request
, urllib.parse
和urllib.error
。盡管函數名稱大多數和原來一樣,但是在用新的urllib庫時需要注意哪些函數被移動到子模塊里了。
urllib是python的標準庫,包含了從網絡請求數據,處理cookie,甚至改變像請求頭和用戶代理這些元數據的函數。
urlopen用來打開并讀取一個從網絡獲取的遠程對象。它可以輕松讀取HTML文件、圖像文件或其他任何文件流。
url = "http://www.zhihu.com" page_info = urllib.request.urlopen(url).read()
urllib.request
是urllib的一個子模塊,可以打開和處理一些復雜的網址
decode('utf-8')
用來將頁面轉換成utf-8的編碼格式,否則會出現亂碼
page_info = page_info.decode('utf-8') print(page_info)
urllib.request.urlopen()
方法實現了打開url,并返回一個 http.client.HTTPResponse
對象,通過http.client.HTTPResponse的read()
方法,獲得response body,轉碼最后通過print()
打印出來.
更多關于Python相關內容可查看本站專題:《Python Socket編程技巧總結》、《Python正則表達式用法總結》、《Python數據結構與算法教程》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設計有所幫助。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。