基于python實現(xiàn)獲取網(wǎng)頁圖片過程解析
環(huán)境:python3, 要安裝bs4這個第三方庫
獲取請求頭的方法
這里使用的是Chrome瀏覽器。
打開你想查詢的網(wǎng)站,按F12,或者鼠標右鍵一下選擇檢查。會彈出如下的審查元素頁面:

然后點擊上方選項中的Network選項:

此時在按Ctrl+R:

選擇下方框中的第一個,單擊:

選擇Headers選項,其中就會有Request Headers,包括你需要的信息。
介紹:這個程序是用來批量獲取網(wǎng)頁的圖片,用于新手入門
注意:由于是入門的程序在獲取某些網(wǎng)頁的圖片時會出問題?。。。?!
import os
import urllib.request
from bs4 import BeautifulSoup
# 網(wǎng)址
url = "http://www2017.tyut.edu.cn/"
# 建立請求對象
request = urllib.request.Request(url)
# 加入請求頭(一定要換成自己的!?。。。?
request.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36')
# 獲取請求
code = urllib.request.urlopen(request)
# 得到html代碼
html = code.read().decode('utf-8')
# 將html的標簽轉(zhuǎn)成對象(方便后面的操作)
bs = BeautifulSoup(html, 'html.parser')
# 提取所有的img標簽
imagesUrl = bs.find_all('img')
sources = []
# 建立存放的路徑(路徑一定要存在?。。。。。。?
filepath = os.getcwd() + '\\images\\'
def createFile(path: str, fpath):
urllib.request.urlretrieve(path, fpath)
# 獲取圖片的路徑(網(wǎng)址+img標簽的src屬性的值)
for img in imagesUrl:
sources.append(url + str(img.get('src')))
for src in sources:
# 用split是防止請求帶參
baseName = os.path.basename(src).split('?')
# 圖片名
fileName = filepath + baseName[0]
print("url=" + src, "filename=" + fileName)
createFile(src, fileName)
print('這次您一共下載了圖片' + str(len(sources)) + '張')
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Python使用Asyncio實現(xiàn)檢查網(wǎng)站狀態(tài)
這篇文章主要為大家詳細介紹了Python如何使用Asyncio實現(xiàn)檢查網(wǎng)站狀態(tài),文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下2023-03-03
關于python3.7安裝matplotlib始終無法成功的問題的解決
這篇文章主要介紹了關于python3.7安裝matplotlib始終無法成功的問題的解決,文中通過圖文介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-07-07
python tkinter實現(xiàn)下載進度條及抖音視頻去水印原理
這篇文章主要介紹了python tkinter實現(xiàn)下載進度條及抖音視頻去水印原理,幫助大家更好的利用python,感興趣的朋友可以了解下2021-02-02
python使用jieba實現(xiàn)中文分詞去停用詞方法示例
jieba分詞,完全開源,有集成的python庫,簡單易用。下面這篇文章主要給大家介紹了關于python使用jieba實現(xiàn)中文分詞去停用詞的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。2018-03-03

