您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關(guān)Python如何批量爬取某網(wǎng)站圖片的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
Requests re os time 如果沒有安裝的請自己安裝一下,pycharm中打開終端輸入命令就可以安裝
IDE : pycharm
python 版本: 3.8.1
https://www.vmgirls.com/9384.html
-------------------廢話不多說了,不懂的可以給我留言哦,接下來我們一步一步來操作------------------
1.請求網(wǎng)頁
# 請求網(wǎng)頁 import requests response=requests.get('https://www.vmgirls.com/9384.html') print(response.text)
發(fā)現(xiàn)請求到的是403,直接禁止了我們訪問,requests庫會告訴他我們是python過來的,他知道我們是一個python禁止我們反爬
解決:
我們可以偽裝頭,把頭設(shè)置一下
# 請求網(wǎng)頁 import requests headers={ 'user-agent' : 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.100 Safari/537.36' }response=requests.get('https://www.vmgirls.com/9384.html',headers=headers) print(response.request.headers)
執(zhí)行結(jié)果:
這樣頭就偽裝了
2.解析網(wǎng)頁
# 請求網(wǎng)頁 import requests import reheaders={ 'user-agent' : 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.100 Safari/537.36' }response=requests.get('https://www.vmgirls.com/9384.html',headers=headers) # print(response.request.headers) # print(response.text) html=response.text#解析網(wǎng)頁urls=re.findall('<img alt=".*?">
結(jié)果:
可能對re.findall后面不太理解怎么來的,關(guān)鍵就是要找到圖片的dom然后根據(jù)re庫的一個匹配規(guī)則來匹配,要匹配的用(.*?)來表示,不需要匹配的用.*?來代替就可以了,
打開網(wǎng)址,按f12查看源碼找到圖片的代碼
復(fù)制圖片代碼,打開網(wǎng)頁源碼按 ctrl+f 進行搜索,找到圖片源碼的位置
3.保存圖片
具體可以看源碼,我給這些圖片創(chuàng)建了一個文件夾(需要os庫),并且命了名,這樣分類下次看小姐姐就比較容易找到啦
import time import requestsimport reimport osheaders={ 'user-agent' : 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.100 Safari/537.36' }response=requests.get('https://www.vmgirls.com/9384.html',headers=headers) # print(response.request.headers) # print(response.text) html=response.text# 解析網(wǎng)頁# 目錄名字dir_name=re.findall('<img alt="(.*?)">
感謝各位的閱讀!關(guān)于“Python如何批量爬取某網(wǎng)站圖片”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。