欢迎访问宙启技术站
智能推送

如何使用Python函数抓取网页中的图片并保存到本地?

发布时间:2023-07-03 19:25:44

要使用Python函数抓取网页中的图片并保存到本地,可以使用Python的requests库和BeautifulSoup库来处理网络请求和解析网页内容。以下是一种方法来实现这个功能:

1. 导入所需的库:

import requests
from bs4 import BeautifulSoup

2. 创建一个函数来获取网页内容:

def get_html(url):
    response = requests.get(url)
    return response.text

3. 创建一个函数来解析网页内容,找到所有的图片标签:

def parse_html(html):
    soup = BeautifulSoup(html, 'html.parser')
    img_tags = soup.find_all('img')
    return img_tags

4. 创建一个函数来下载图片,并保存到本地:

def download_image(url, filename):
    response = requests.get(url)
    with open(filename, 'wb') as f:
        f.write(response.content)

5. 创建一个函数来调用前面的函数,实现整个过程:

def crawl_images(url):
    # 获取网页内容
    html = get_html(url)
    # 解析网页内容,找到所有的图片标签
    img_tags = parse_html(html)
    # 下载图片,并保存到本地
    for img_tag in img_tags:
        src = img_tag.get('src')
        if src is not None:
            # 跳过data URI格式的图片
            if src.startswith('data:'):
                continue
            # 生成保存的文件名
            filename = src.split('/')[-1]
            # 调用下载图片的函数
            download_image(src, filename)

6. 调用crawl_images函数并传入目标网页的URL,即可实现抓取图片并保存到本地的功能:

crawl_images('https://example.com')

以上就是使用Python函数抓取网页中的图片并保存到本地的方法。请注意,这只是一种简单的实现方法,对于复杂的网页,可能需要对代码进行进一步修改。