python静态页面爬取图片代码
时间: 2024-10-11 21:00:28 浏览: 37
在Python中,我们可以使用一些库如`requests`, `BeautifulSoup`以及`PIL`(Python Imaging Library 或其继承者 `Pillow`)来爬取静态网页上的图片。以下是一个简单的示例代码:
```python
import requests
from bs4 import BeautifulSoup
from PIL import Image
import io
def download_image(url):
# 发送GET请求获取网页内容
response = requests.get(url)
# 使用BeautifulSoup解析HTML
soup = BeautifulSoup(response.text, 'html.parser')
# 查找图片标签(这取决于网站结构,可能是img,也可能其他)
img_tags = soup.find_all('img') # 这里假设图片都在img标签内
for img in img_tags:
img_url = img['src'] # 获取图片链接
# 下载图片并保存到内存
try:
img_data = requests.get(img_url).content
image = Image.open(io.BytesIO(img_data))
# 可能需要对图片进行处理,比如调整大小、保存为特定格式等
# image.save('image_name.jpg', 'JPEG')
# 直接显示图片
image.show()
except Exception as e:
print(f"下载图片失败: {e}")
# 调用函数,传入你想爬取的图片URL
download_image("https://example.com/page")
```
注意,这个例子假设你想要下载网页上所有`<img>`标签的图片。实际应用中,可能需要更复杂的逻辑去定位目标图片,并遵守网站的robots.txt规则。
阅读全文