Python爬虫学习開篇

前幾天偶然看到了一篇爬蟲學習的文章,於是我也打算學習一下。也算是通過這個來練習一下python。不過學習過程是很痛苦的,作爲一個一直在控制台下學習C/C++,對於前端知識,計算機網絡幾乎不怎麼瞭解的人。進了很多的坑。所以寫這篇文章,主要是爲了記下自己的學習感悟。

1:基礎知識的了解。

通常我們見到的網頁,主要是由HTML,CSS,JavaScript組成。我個人的理解是,HTML相當於元素。說明了這個網頁上有什麼東西;CSS呢,是讓這些東西組織起來,控制它的佈局。不如我們要是把臉放在了屁股的位置上。。。。這肯定是不行的。javascript呢,是讓這個網頁動起來,你點擊一下,我給你彈出個什麼東西。PHP呢,是負責和遠程也就是后臺的數據庫進行交互。你提交了一個表單,我就處理你的請求,然後把(通常是)登錄之後的界面顯示出來。
以上都是我自己的個人理解,應該是有不對的地方。歡迎指出錯誤,共同學習。

2:URL(統一資源定位符的含義)

都讓開,先讓我裝個英語的B(雖然我六級還沒有過)。URL即Uniform/Universal Resource Locator。其實也就是我們通常說的網址啦。爲什麼叫資源定位符呢,其實你想一下也是合理的。因爲我們所謂的網頁就是某個服務器上的一些資源啊。在因特網的某個小腳落。存放着某個網頁。這特麼不就是資源嘛。說網址是爲了好記憶。

URL的構成

协议类型://服务器地址(必要时需加上端口号)/路径/文件名
例如:
http://kmustjwcxk3.kmust.edu.cn/jwweb/default.aspx
上面這個URL中,HTTP是協議類型;kmustjwcxk3.kmust.edu.cn是服務器;jwweb/default.aspx是路徑。
其中端口號有時可以不寫。其中還可以包括查詢,至於具體的,大家看wiki去。百度這個就不要去了,太沒節操了。

3:瀏覽網頁的過程

當我們瀏覽一個網頁時,網址經過DNS服務器解析出服務器主機。然後向服務器發送一個請求。服務器收到請求之後會處理,對此解析出相應的HTML CSS等。然後你就看到你想看的東西啦,比如什麼東京熱什麼的。

什麼是爬蟲

爬蟲也叫網絡蜘蛛。把互聯網比做一個大網的話,爬蟲就是這上面的蜘蛛,可一順着一根蛛絲(其實就是url啦)把它所經過的地方。也就是網頁的內容給記下來。然後呢,我們就可以對這些東西進行分析,特別是像Google,還有我們國家的那個什麼度等等這些公司,最離不開這個東西了。

urllib庫的使用。

urllib是python封裝的一個網絡庫,提供的各式各樣的函數和對象來幫你處理url。下面先看先看一個簡單的使用吧。

#coding=utf-8
__author__='LSC'

import urllib
handle=urllib.urlopen('www.kmust.edu.cn')
print  handle.read().decode('utf8')

代碼簡單吧,就幾行。其中大家需要注意的是decode(‘utf8’)這個部分。原因是因爲windwos終端的編碼和網頁的編碼不一致。如果不調用這個函數,就會出現漢字亂碼的現象。
簡單地介紹一下這部分代碼:

handle=urllib.urlopen(‘www.kmust.edu.cn’)

這部分是打開一個url。如果打開成功,會返回一個file-like即類文件對象,既然是類文件對象,肯定支持打開,讀取等操作。所以read()方法,讀取文件中內容,也就是網頁的HTML。然後指定解碼方式。
就是醬紫。

你可能感兴趣的:(Python)