按下列两种方式, 将网页(https://m.huiyi8.com/fengjing/zuimei/)中的图片分别爬取保存至本地文件目录“image1/”和“image2/”中(请自行先创建好文件夹)。 (1) 仅利用urllib模块完成图片爬取任务,可参考“picture_crawler.py”。
时间: 2023-11-28 09:06:18 浏览: 106
通过爬虫获取你想要的图片,可以选择下载的图片数量并自动创建文件夹保存图片 image.zip
好的,您的需求是按照两种方式,将网页中的图片分别爬取保存至本地文件目录“image1/”和“image2/”中,其中第一种方式仅利用urllib模块完成图片爬取任务。下面是我的实现方法:
1. 首先,引入urllib.request模块,使用urllib.request.urlopen函数打开目标网页,获取网页源代码。
2. 然后,使用正则表达式匹配网页中的图片链接,生成图片链接列表。
3. 接着,遍历图片链接列表,使用urllib.request.urlretrieve函数下载每个图片,并保存到本地文件目录“image1/”中。
需要注意的是,在使用正则表达式匹配图片链接时,需要使用re.findall函数返回所有匹配结果。
下面是Python代码实现:
``` python
import urllib.request
import re
import os
# 创建本地文件目录
if not os.path.exists('image1'):
os.makedirs('image1')
# 打开目标网页,获取网页源代码
url = 'https://m.huiyi8.com/fengjing/zuimei/'
response = urllib.request.urlopen(url)
html = response.read().decode('utf-8')
# 使用正则表达式匹配图片链接,生成图片链接列表
pattern = r'<img src="(.*?)"'
image_urls = re.findall(pattern, html)
# 遍历图片链接列表,下载每个图片,并保存到本地文件目录“image1/”中
for i, image_url in enumerate(image_urls):
filename = 'image1/' + str(i+1) + '.jpg'
urllib.request.urlretrieve(image_url, filename)
print('Successfully downloaded', filename)
```
运行以上代码,即可将网页中的图片爬取并保存至本地文件目录“image1/”中。
希望我的回答能够帮到您!
阅读全文