【urllib and urllib2】
這是兩個python的網路模組 內建的 提供很好的網路訪問的功能。
#!coding:utf-8import urllib2
res = urllib2.urlopen('')
html = res.read()
print(html)
如果我們想要去爬一些可以這樣幹
#!/usr/bin/env python#conding:utf-8
import urllib , urllib2
url = ""
header =
req = urllib2.request(url,headers = header)
response = urllib2.urlopen(req)
data = response.read()
import re
#print data
p =re.compile(ur'可以把豆瓣某個電影頁面的封面都爬下來 並且以檔名的形式儲存下來
【正規表示式】
在python中想要用正規表示式就必須要要用re模組
hello worldbody>html>
比如我們想從這裡提取helloword
#coding:utf-8
import re
key = r"hello world
"p1 = r".+"
pattern1 = re.compile(p1)
print pattern1.findall(key)
首先我們知道 . 代表的任意單個字元 而且 + 呢 則代表的是 前面的模擬出現任意次
那麼如果我們想就想匹配 .
比如我們要匹配 213d3421a.qq.com123123
裡面的a.qq.com
key = r"213d3421a.qq.com123123"p1 = r"a.\qq.\com"
pattern1 = re.compile(p1)
print pattern1.findall(key)
我們通過 『\』 來轉義 將 【. 】 從任意單個字元轉義成它原本的意思
個人理解:我們在學習正規表示式的時候 應該把正規表示式分成 表示式語句 和 修飾語句 兩部分來看 這樣就會容易很多
就比方我們看過的例子
#coding:utf-8import re
key = r"hello world
"p1 = r".+"
pattern1 = re.compile(p1)
print pattern1.findall(key)
我們可以理解為 . 就是代表表示式 而+ 代表的是修飾符 .代表的任意單個字元 而+則是出現任意此 那麼.+的意思就是任意字元出現任意次
#conding:utf-8import re
key = r"abb adb abbb a abcd"
p1 = r"ab*"
pattern1 = re.compile(p1)
print pattern1.findall(key)
我們看這段** 能匹配到那些呢
*代表的是他前面的字元出現任意次 那麼 這裡的表示式就是*前面的字元 而修飾語言就是*
這裡能被匹配道的是
['abb', 'a', 'abbb', 'a', 'ab']
03 Python爬蟲入門遇到的坑
3.向360搜尋提交問題 使用程式碼模擬使用360搜尋.大概就是要得到下面這個頁面.首先我們要知道360給出的介面是 其中的keyword就是我們提交的關鍵字.這時候我們可以使用乙個字典向瀏覽器提交關鍵字 kv 然後使用params屬性提交這個自帶即可.示例程式碼如下 import requests...
03 python爬蟲基本原理
爬蟲是 模擬使用者在瀏覽器或者某個應用上的操作,把操作的過程 實現自動化的程式 當我們在瀏覽器中輸入乙個url後回車,後台會發生什麼?比如說你輸入 簡單來說這段過程發生了以下四個步驟 網路爬蟲本質 本質就是瀏覽器http請求 瀏覽器和網路爬蟲是兩種不同的網路客戶端,都以相同的方式來獲取網頁 網路爬蟲...
03 Python集合型別
python集合型別思維導圖 只有1個元素的tuple定義時必須加乙個逗號,來消除歧義 2 常用操作 2 字典的常見操作 2 新增元素 3 刪除元素 clear 3 字典的常見函式 2 keys map.keyset 3 values 4 items 4 字典遍歷 3 dict可以用在需要高速查詢的...