爬蟲,即網路爬蟲。打個形象的比方:乙隻蜘蛛在蜘蛛網上爬,可以以某種方式從網上的某個地方找到自己想要的東西。
那麼和網頁相聯絡起來有什麼關係呢?
首先我們先簡單介紹一下網頁的基本概念。所謂網頁,也就是我們給瀏覽器輸出乙個字串,瀏覽器進行解析後,經dns伺服器找到伺服器主機後,向伺服器發出請求,伺服器經過解析之後,向瀏覽器傳送html、js、css等檔案,再由瀏覽器進行解析,組成了平時我們所見的視覺化網頁。所以說網頁的實質就是指伺服器傳送過來的html、js、css等檔案。這些檔案簡要概括起來就是對文字的獲取,在經由規則化排布,組成網頁。比較來說:html就是網頁的骨架、js就是網頁的肌肉、css就是網頁的衣服,組成了乙個完整的"人"。
那麼我們輸入的字串也就是我們說的**到底是什麼?即url,即統一資源定位符。它是網際網路上資源位置和訪問方式的一種簡潔的表示,它是網際網路上標準資源的位址。網際網路上的每個檔案都有乙個唯一的url,它包含的資訊指出檔案的位置以及瀏覽器應該怎麼處理它。例:"",url由三部分組成:
1、協議,也就是服務方式,大部分我們平常使用的**都是http協議的。
2、存有該資源的主機ip位址。
3、主機資源的具體位址。
理解了url我們對爬蟲的理解也就更近了一步。
爬取第乙個網頁!!!
python中與抓取網頁相關的庫有urllib和urllib2。兩者有點小區別:
urllib 和urllib2都是接受url請求的相關模組,但是urllib2可以接受乙個request類的例項來設定url請求的headers,urllib僅可以接受url。這意味著,你不可以偽裝你的user agent字串等。urllib提供urlencode方法用來get查詢字串的產生,而urllib2沒有。這是為何urllib常和urllib2一起使用的原因。目前的大部分http請求都是通過urllib2來訪問的。
舉例:
#coding=utf-8
import urllib2
url = ''
netthings= urllib2.urlopen(url)
print netthings.read() #使用urllib2模組爬蟲抓取了特定網頁
輸出就不列舉了,網頁內容太多。
這裡使用了urllib2模組的urlopen函式,先拉取了乙個網頁,儲存到netthings物件中,再用netthings物件的read方法將網頁內容返回。urlopen(url,data,timeout),這個函式接受三個引數,第乙個引數:url即**,第二個引數:data,可以是需要傳入的登入賬戶和密碼,可以為空,第三個:timeout,設定超時時間,可以為空。
這樣我們就簡單的抓取了我們的第乙個網頁啦!
python入門 基礎知識
1.運算子 加 減 乘 除 取餘 平方 2.獲取輸入 input 函式獲取使用者的輸入,將字串和數字轉換成整數 raw input 函式獲取使用者的輸入,結果被看作原始字串 test input pleae enter your name intpu jackm or 3,此函式讀取引數加入 數字不...
爬蟲基礎知識
大資料時代,要進行資料分析,首先要有資料來源。而學習爬蟲,可以讓我們獲取更多的資料來源,並且這些資料來源可以按我們的目的進行採集,去掉很多無關資料。網路爬蟲 又被稱為網頁蜘蛛,網路機械人 就是模擬客戶端傳送網路請求,接收請求響應,一種按照一定的規則,自動地抓取網際網路資訊的程式。只要是瀏覽器能做的事...
Python爬蟲入門有哪些基礎知識點
1 什麼是爬蟲 爬蟲,即網路爬蟲,大家可以理解為在網路上爬行的一直蜘蛛,網際網路就比作一張大網,而爬蟲便是在這張網上爬來爬去的蜘蛛咯,如果它遇到資源,那麼它就會抓取下來。想抓取什麼?這個由你來控制它咯。比如它在抓取乙個網頁,在這個網中他發現了一條道路,其實就是指向網頁的超連結,那麼它就可以爬到另一張...