2020国产成人精品视频,性做久久久久久久久,亚洲国产成人久久综合一区,亚洲影院天堂中文av色

分享

python爬蟲入門教程:爬取網(wǎng)頁圖片

 東西二王 2023-07-17 發(fā)布于重慶

2023-06-27 21:12·馬士兵AI程序員

在現(xiàn)在這個信息爆炸的時代,要想高效的獲取數(shù)據(jù),爬蟲是非常好用的。而用python做爬蟲也十分簡單方便,下面通過一個簡單的小爬蟲程序來看一看寫爬蟲的基本過程:

準(zhǔn)備工作

語言:python

IDE:pycharm

首先是要用到的庫,因為是剛?cè)腴T最簡單的程序,我們主要就用到下面這兩:

import requests //用于請求網(wǎng)頁import re  //正則表達式,用于解析篩選網(wǎng)頁中的信息

其中re是python自帶的,requests庫需要我們自己安裝,在命令行中輸入pip install requests即可。

然后隨便找一個網(wǎng)站,注意不要嘗試爬取隱私敏感信息,這里找了個表情包網(wǎng)站:

注:此處表情包網(wǎng)站中的內(nèi)容本來就可以免費下載,所以爬蟲只是簡化了我們一個個點的流程,注意不能去爬取付費資源。

我們要做的就是通過爬蟲把這些表情包下載到我們電腦里。

編寫爬蟲程序

首先肯定要通過python訪問這個網(wǎng)站,代碼如下:

headers = {    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:98.0) Gecko/20100101 Firefox/98.0'
    }
response = requests.get('https://qq./zjbq/',headers=headers)  //請求網(wǎng)頁

其中之所以要加headers這一段是因為有些網(wǎng)頁會識別到你是通過python請求的然后把你拒絕,所以我們要換個正常的請求頭。可以隨便找一個或者f12從網(wǎng)絡(luò)信息里復(fù)制一個。

然后我們要找到我們要爬取的圖片在網(wǎng)頁代碼里的位置,f12查看源代碼,找到表情包如下:

然后建立匹配規(guī)則,用正則表達式把中間那串替換掉,最簡單的就是.*?

t = '<img src="(.*?)" alt="(.*?)" width="160" height="120">'

像這樣。

然后就可以調(diào)用re庫里的findall方法把相關(guān)內(nèi)容爬下來了:

result = re.findall(t, response.text)

返回的內(nèi)容是由字符串組成的列表,最后我們經(jīng)由爬到的地址通過python語句把圖片下下來保存到文件夾里就行了。

程序代碼

import requests
import re
import os
 image = '表情包'if not os.path.exists(image):    os.mkdir(image)
headers = {    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:98.0) Gecko/20100101 Firefox/98.0'
    }
response = requests.get('https://qq./zjbq/',headers=headers)
response.encoding = 'GBK'response.encoding = 'utf-8'print(response.request.headers)print(response.status_code)
t = '<img src="(.*?)" alt="(.*?)" width="160" height="120">'result = re.findall(t, response.text)for img in result:    print(img)
    res = requests.get(img[0])    print(res.status_code)
    s = img[0].split('.')[-1]  #截取圖片后綴,得到表情包格式,如jpg ,gif
    with open(image + '/' + img[1] + '.' + s, mode='wb') as file:
        file.write(res.content)

最后結(jié)果就是這個樣子:

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多