日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 综合教程 >内容正文

综合教程

python爬虫入门实战之爬取网页图片(Python爬虫新手入门教学)

發(fā)布時(shí)間:2023/12/15 综合教程 20 生活家
生活随笔 收集整理的這篇文章主要介紹了 python爬虫入门实战之爬取网页图片(Python爬虫新手入门教学) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本篇文章給大家?guī)?lái)了關(guān)于Python的相關(guān)知識(shí),其中主要整理了爬取網(wǎng)頁(yè)圖片的相關(guān)問(wèn)題,要想高效的獲取數(shù)據(jù),爬蟲(chóng)是非常好用的,而用python做爬蟲(chóng)也十分簡(jiǎn)單方便,下面通過(guò)一個(gè)簡(jiǎn)單的小爬蟲(chóng)程序來(lái)看一看寫爬蟲(chóng)的基本過(guò)程,下面一起來(lái)看一下,希望對(duì)大家有幫助。

【相關(guān)推薦:Python3視頻教程 】

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

準(zhǔn)備工作

語(yǔ)言:python

IDE:pycharm

首先是要用到的庫(kù),因?yàn)槭莿側(cè)腴T最簡(jiǎn)單的程序,我們主要就用到下面這兩:

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

登錄后復(fù)制

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

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

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

我們要做的就是通過(guò)爬蟲(chóng)把這些表情包下載到我們電腦里。

編寫爬蟲(chóng)程序

首先肯定要通過(guò)python訪問(wèn)這個(gè)網(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.yh31.com/zjbq/',headers=headers)  //請(qǐng)求網(wǎng)頁(yè)

登錄后復(fù)制

其中之所以要加headers這一段是因?yàn)橛行┚W(wǎng)頁(yè)會(huì)識(shí)別到你是通過(guò)python請(qǐng)求的然后把你拒絕,所以我們要換個(gè)正常的請(qǐng)求頭。可以隨便找一個(gè)或者f12從網(wǎng)絡(luò)信息里復(fù)制一個(gè)。

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

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

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

登錄后復(fù)制

像這樣。

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

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

登錄后復(fù)制

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

程序代碼

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.yh31.com/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)

登錄后復(fù)制

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

【相關(guān)推薦:Python3視頻教程 】

以上就是python爬蟲(chóng)入門實(shí)戰(zhàn)之爬取網(wǎng)頁(yè)圖片的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注風(fēng)君子博客其它相關(guān)文章!

總結(jié)

以上是生活随笔為你收集整理的python爬虫入门实战之爬取网页图片(Python爬虫新手入门教学)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。