将网页(https://m.huiyi8.com/fengjing/zuimei/)中的图片分别爬取保存至本地文件目录“image1/”和“image2/”中(请自行先创建好文件夹)。,结合第三方库Beautiful Soup和requests完成图片爬取任务,可参考“bs4_pics.py”。
时间: 2023-11-28 18:05:50 浏览: 146
好的,以下是代码实现:
```python
import os
import requests
from bs4 import BeautifulSoup
# 爬取图片的网页链接
url = 'https://m.huiyi8.com/fengjing/zuimei/'
# 创建文件夹
if not os.path.exists('image1'):
os.makedirs('image1')
if not os.path.exists('image2'):
os.makedirs('image2')
# 发送请求,获取网页内容
response = requests.get(url)
html = response.text
# 解析网页内容
soup = BeautifulSoup(html, 'html.parser')
img_tags = soup.find_all('img')
# 遍历图片标签,下载图片到相应的文件夹
for img_tag in img_tags:
img_url = img_tag['src']
if 'http' not in img_url:
img_url = 'https:' + img_url
if 'jpg' in img_url:
response = requests.get(img_url)
with open('image1/' + img_url.split('/')[-1], 'wb') as f:
f.write(response.content)
elif 'png' in img_url:
response = requests.get(img_url)
with open('image2/' + img_url.split('/')[-1], 'wb') as f:
f.write(response.content)
print('图片爬取完成!')
```
解释一下代码:
1. 首先定义了爬取的网页链接和要保存的文件夹名称。
2. 判断文件夹是否存在,如果不存在就创建。
3. 发送请求获取网页内容,然后用BeautifulSoup库解析网页内容。
4. 遍历图片标签,获取图片的链接。
5. 判断图片格式是jpg还是png,然后发送请求下载图片到相应的文件夹中。
6. 最后输出提示信息,表示图片爬取完成。
需要注意的是,这个网页中的图片链接是以相对路径的形式存在的,需要加上'https:'前缀才能正常下载。
阅读全文