You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用requests获取Clearbit API的Logo并直接渲染为图片

解决Clearbit Logo API返回内容渲染为图片的问题

Clearbit的Logo API返回的是图片二进制数据,不是文本内容,你当前用response.text获取的是二进制转字符串后的乱码内容。要渲染成图片,需要处理二进制响应内容,以下是几种可行方案:

方案1:保存为本地图片文件

直接将二进制内容写入本地文件,生成可查看的图片:

import requests

url = "https://logo.clearbit.com/shopify.com"
response = requests.get(url)

# 验证请求是否成功
if response.status_code == 200:
    with open("shopify_logo.png", "wb") as file:
        file.write(response.content)
    print("Logo已保存为 shopify_logo.png")
else:
    print(f"请求失败,状态码:{response.status_code}")
  • 用wb(二进制写入)模式打开文件,写入response.content(二进制响应体)即可生成正常图片。

方案2:在Python中直接显示图片

借助Pillow库直接在本地打开图片:

  1. 先安装依赖:
pip install pillow
  1. 运行以下代码:
import requests
from PIL import Image
from io import BytesIO

url = "https://logo.clearbit.com/shopify.com"
response = requests.get(url)

if response.status_code == 200:
    # 将二进制内容转为内存中的文件对象
    img_buffer = BytesIO(response.content)
    logo_img = Image.open(img_buffer)
    logo_img.show()
else:
    print(f"请求失败,状态码:{response.status_code}")
  • BytesIO将二进制内容包装成类文件对象,供Pillow读取并显示。

方案3:在Jupyter Notebook中直接渲染

如果使用Jupyter环境,可通过内置工具直接显示图片:

import requests
from IPython.display import Image

url = "https://logo.clearbit.com/shopify.com"
response = requests.get(url)

if response.status_code == 200:
    display(Image(response.content))
else:
    print(f"请求失败,状态码:{response.status_code}")

内容的提问来源于stack exchange,提问作者Sushmitha Krishnan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 09:05:38