简介:本文将介绍如何使用Python爬虫批量下载高清大图,通过requests和BeautifulSoup库,从指定网站上抓取图片并保存到本地文件夹。
在Python中,我们可以使用requests和BeautifulSoup库来抓取网页数据,包括图片。以下是一个简单的示例,演示如何批量下载高清大图。
首先,确保你已经安装了requests和BeautifulSoup库。如果尚未安装,可以使用以下命令进行安装:
pip install requests beautifulsoup4
接下来,我们将编写一个Python脚本,该脚本将从指定网站上抓取图片并保存到本地文件夹。
import osimport requestsfrom bs4 import BeautifulSoup# 目标网站和图片URL的规律url = 'http://example.com/high-quality-images' # 目标网站URLimage_url_pattern = 'http://example.com/high-quality-images/image-{}.jpg' # 图片URL的规律# 下载图片并保存到本地文件夹def download_images(url, image_url_pattern, save_dir):response = requests.get(url)soup = BeautifulSoup(response.text, 'html.parser')image_urls = [image_url_pattern.format(i) for i in range(1, 11)] # 假设我们要下载前10张图片for image_url in image_urls:response = requests.get(image_url)with open(os.path.join(save_dir, image_url.split('/')[-1]), 'wb') as f:f.write(response.content)# 运行脚本并指定保存目录if __name__ == '__main__':save_dir = 'images' # 保存图片的目录,如果不存在则会自动创建if not os.path.exists(save_dir):os.makedirs(save_dir)download_images(url, image_url_pattern, save_dir)
在上面的代码中,我们首先定义了目标网站的URL和图片URL的规律。然后,我们编写了一个名为download_images的函数,该函数使用requests和BeautifulSoup库从目标网站上抓取指定URL的图片,并将它们保存到本地文件夹中。在函数中,我们首先发送GET请求获取目标网站的HTML内容,然后使用BeautifulSoup库解析HTML并查找符合URL规律的图片URL。最后,我们使用另一个GET请求下载每张图片,并将其保存到本地文件夹中。在主程序中,我们指定了保存图片的目录,并调用download_images函数来下载图片。
请注意,这只是一个简单的示例,实际的爬虫可能需要处理更多的情况,例如处理JavaScript动态加载的内容、处理反爬虫机制等。此外,请确保在使用爬虫时遵守目标网站的robots.txt文件和使用条款,以避免对网站造成不必要的负担或违反法律法规。