python爬虫爬取图片
时间: 2023-10-11 13:13:38 浏览: 39
要爬取网页上的图片,您可以使用 Python 中的 requests 库和 BeautifulSoup 库。
下面是一个简单的示例代码,可以爬取指定网页中的所有图片并将其保存到本地:
```python
import requests
from bs4 import BeautifulSoup
import os
# 指定要爬取的网页URL
url = "https://example.com"
# 发送请求
response = requests.get(url)
# 解析HTML内容
soup = BeautifulSoup(response.content, "html.parser")
# 用来存储图片的文件夹
img_folder = "images"
# 如果文件夹不存在则创建
if not os.path.exists(img_folder):
os.mkdir(img_folder)
# 遍历所有图片标签
for img in soup.find_all("img"):
# 获取图片的URL
img_url = img.get("src")
# 如果图片URL是相对路径,则拼接成绝对路径
if not img_url.startswith("http"):
img_url = url + img_url
# 发送请求获取图片内容
img_response = requests.get(img_url)
# 获取图片的文件名
img_name = img_url.split("/")[-1]
# 保存图片到本地文件夹
with open(os.path.join(img_folder, img_name), "wb") as f:
f.write(img_response.content)
print("所有图片已下载完成!")
```
在上述代码中,我们首先指定要爬取的网页URL,然后使用 requests 库发送请求获取网页的内容。接着使用 BeautifulSoup 库解析HTML内容,找到所有图片标签,并遍历每个图片标签。对于每个图片标签,我们获取图片的URL,并发送请求获取图片内容。最后将图片保存到本地文件夹中。
请注意,该示例代码并未添加异常处理和错误处理,实际应用中应该加入更加完善的异常处理和错误处理。