Python 實現簡單的爬蟲功能: 圖片的抓取

#!/usr/python3
import urllib.request # 導入urllib中的request類
import re  # 導入 re 模塊 主要包含了正則表達式

def gethtml(url):
    page=urllib.request.urlopen(url)  # 用於打開一個URL地址。
    html=page.read()  # 用於讀取URL上的數據,向gethtml()函數傳遞一個網址,並把整個頁面下載下來。執行程序就會把整個網頁打印輸出。
    return html

def getimg(html):
    reg = r'src="(.*?\.jpg)"'#抓取圖片的正則表達式
    img=re.compile(reg) #可以把正則表達式編譯成一個正則表達式對象.
    html=html.decode('utf-8') #python3
    imglist=re.findall(img,html)  #方法讀取html 中包含 imgre(正則表達式)的數據。
    x = 0
    for imgurl in imglist:
        urllib.request.urlretrieve(imgurl,'%s.jpg'%x) #這裏的核心是用到了urllib.urlretrieve()方法,直接將遠程數據下載到本地。
        x = x+1                                        #通過一個for循環對獲取的圖片連接進行遍歷,爲了使圖片的文件名看上去更規範,對其進行重命名,命名規則通過x變量加1。保存的位置默認爲程序的存放目錄。
                                                       #程序運行完成,將在目錄下看到下載到本地的文件。

html=gethtml("https://tieba.baidu.com/p/5385194399")
print(getimg(html))
發佈了5 篇原創文章 · 獲贊 14 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章