你可以使用Python的requests庫來發起HTTP請求,并使用BeautifulSoup庫來解析HTML文檔以獲取圖片的URL。
下面是一個簡單的示例代碼,用于批量爬取網頁上的圖片:
import requests
from bs4 import BeautifulSoup
import os
def download_image(url, save_dir):
response = requests.get(url)
filename = url.split("/")[-1]
filepath = os.path.join(save_dir, filename)
with open(filepath, "wb") as f:
f.write(response.content)
print(f"Downloaded {url} to {filepath}")
def get_image_urls(url):
response = requests.get(url)
soup = BeautifulSoup(response.text, "html.parser")
img_tags = soup.find_all("img")
img_urls = [img["src"] for img in img_tags]
return img_urls
def batch_download_images(url, save_dir):
img_urls = get_image_urls(url)
for img_url in img_urls:
if not img_url.startswith("http"):
img_url = url + img_url # 拼接相對路徑
download_image(img_url, save_dir)
url = "https://example.com" # 要爬取圖片的網頁
save_dir = "images" # 圖片保存的目錄
batch_download_images(url, save_dir)
在代碼中,get_image_urls
函數用于獲取網頁上的所有圖片URL,download_image
函數用于下載圖片,batch_download_images
函數用于批量下載圖片。
你需要將url
變量設置為要爬取圖片的網頁的URL,將save_dir
變量設置為圖片保存的目錄。然后運行batch_download_images
函數即可開始批量爬取網頁圖片。
請注意,這只是一個簡單的示例,實際中可能需要根據具體情況進行修改和完善。另外,爬取網頁圖片涉及到版權和合法問題,請確保你有權利或合法使用這些圖片。