python requests bs4爬取网络图片
时间: 2023-07-22 20:52:10 浏览: 151
使用 Python 中的 requests 和 Beautiful Soup 库可以轻松地爬取网络图片。以下是一个简单的示例,可以爬取指定网页中所有的图片,并将其保存到本地文件夹中:
```
import os
import requests
from bs4 import BeautifulSoup
# 网页 URL
url = "https://www.example.com"
# 请求头部信息,模拟浏览器请求
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36"
}
# 发送 GET 请求
response = requests.get(url, headers=headers)
# 解析 HTML 页面
soup = BeautifulSoup(response.content, 'html.parser')
# 找到所有的图片标签
img_tags = soup.find_all('img')
# 遍历所有的图片标签,依次下载图片
for img_tag in img_tags:
# 获取图片链接
img_url = img_tag.get('src')
# 发送 GET 请求,获取图片数据
img_response = requests.get(img_url)
# 获取图片名称
img_name = os.path.basename(img_url)
# 保存图片到本地文件夹
with open(f"images/{img_name}", "wb") as f:
f.write(img_response.content)
print(f"Saved {img_name} successfully!")
```
需要注意的是,这段代码中的网页 URL 和请求头部信息需要根据实际情况进行修改。另外,需要确保本地文件夹 images 存在并且有写权限,否则保存图片会失败。
阅读全文