**:
做個小專案練練手,比較有動力繼續下去,這邊參考最簡單的爬蟲程式自己抄了一下。但是因為3.0的關係,無法直接使用,根據2.0版本的**進行修改後成功了。
**如下:
# -*- coding: utf-8 -*-
import urllib.request
import re
#該函式用於獲取html內容
#使用到urlopen的函式
defgethtml
(url):
page = urllib.request.urlopen(url)
#3.0直接使用read()函式會出現報錯,提示是編碼有問題。在後面加上編碼就ok了。
html = page.read().decode("utf-8")
return html
defgetimg
(html):
#reg為正則替換,這邊是根據貼吧的帖子的在html中的狀態拼的,只適用於貼吧帖子下圖
#正則的詳細教程見:
#compile比較簡單的解釋是製作乙個漏斗,規則如reg,只有符合的才能夠通過。
imgre = re.compile(reg)
imglist = re.findall(imgre, html)
x = 0
for imgurl in imglist:
#print ("for test %s" % x) 檢視是否走到迴圈用的print
#html變數定義乙個需要讀取的**,這邊選擇的是某個貼吧的帖子。
html = gethtml("")
#執行操作
getimg(html)
print("all over!")
Python3 0的新改動
這篇文章主要介紹了相比於python2.6,python3.0的新特性。更詳細的介紹請參見 python3.0的文件。common stumbling blocks 本段簡單的列出容易使人出錯的變動 初學者應該注意 old print the answer is 2 2 new print the ...
Python3 0和Python2 0的差異
一 print 從語句變為函式 原 print 1,2 3 改為 print 1,2 3 二 range 與 xrange 原 range 0,4 結果 是 列表 0,1,2,3 改為 list range 0,4 原 xrange 0,4 適用於 for 迴圈的變數控制 改為 range 0,4 ...
python 2 0 和python 3 0的區別
區別一 input功能會將使用者輸入的內容統一以 字串 來對待 python2中的raw input相當於python3當中的input,python3沒有raw input 區別二 python 2 的 print 被print 函式取代了 區別三 python3中 表示真除,表示取餘,結果取整 ...