使用python实现一个简单的图片爬虫

  import os

  import requests

  from bs4 import BeautifulSoup

  from urllib.parse import urljoin

  from urllib.request import urlretrieve

  def download_images(url, save_dir):

  """

  下载指定网页上的所有图片并保存到本地文件夹

  :param url: 目标网页的URL

  :param save_dir: 图片保存的目录

  """

  # 创建保存图片的目录

  if not os.path.exists(save_dir):

  os.makedirs(save_dir)

  # 发送HTTP请求

  response = requests.get(url)

  response.raise_for_status() # 如果请求失败,抛出异常

  # 使用BeautifulSoup解析页面

  soup = BeautifulSoup(response.text, 'html.parser')

  # 查找所有的图片链接

  image_links = soup.find_all('img')

  # 下载并保存图片

  for img in image_links:

  img_url = img.get('src')

  # 如果图片链接是相对路径,则将其转换为绝对路径

  if not img_url.startswith(('http://', 'https://')):

  img_url = urljoin(url, img_url)

  # 下载图片

  img_name = os.path.join(save_dir, img_url.split('/')[-1])

  urlretrieve(img_url, img_name)

  print(f"Downloaded: {img_name}")

  # 使用示例

  url = "https://example.com" # 替换为你要爬取的网页的URL

  save_dir = "images" # 图片保存的目录

  download_images(url, save_dir)