新增 Unsplash API 调用指南
This commit is contained in:
162
openclaw/yunce/Unsplash-API调用指南.md
Normal file
162
openclaw/yunce/Unsplash-API调用指南.md
Normal file
@@ -0,0 +1,162 @@
|
|||||||
|
# Unsplash API 调用指南
|
||||||
|
|
||||||
|
> 用于 N8N 内容流水线自动配图
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 注册与获取 Access Key
|
||||||
|
|
||||||
|
1. 访问 [Unsplash Developers](https://unsplash.com/developers)
|
||||||
|
2. 注册一个 New Application
|
||||||
|
3. 获取 **Access Key**(即 Client ID)
|
||||||
|
|
||||||
|
> 免费额度:50 请求/小时,足够个人/小团队使用
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 基础调用方式
|
||||||
|
|
||||||
|
### 1. curl 命令(测试用)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -s "https://api.unsplash.com/search/photos" \
|
||||||
|
-H "Authorization: Client-ID 你的AccessKey" \
|
||||||
|
-G \
|
||||||
|
--data-urlencode "query=AI automation" \
|
||||||
|
--data-urlencode "per_page=3"
|
||||||
|
```
|
||||||
|
|
||||||
|
**参数说明:**
|
||||||
|
- `query`:搜索关键词(英文效果更好)
|
||||||
|
- `per_page`:返回图片数量(默认 10)
|
||||||
|
|
||||||
|
**解析返回结果(安装 jq 后):**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -s "https://api.unsplash.com/search/photos" \
|
||||||
|
-H "Authorization: Client-ID 你的AccessKey" \
|
||||||
|
-G \
|
||||||
|
--data-urlencode "query=AI automation" \
|
||||||
|
--data-urlencode "per_page=3" \
|
||||||
|
| jq '.results[] | {id, description, url: .urls.regular, credit: .user.name}'
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. 返回字段说明
|
||||||
|
|
||||||
|
| 字段 | 说明 |
|
||||||
|
|------|------|
|
||||||
|
| `id` | 图片唯一 ID |
|
||||||
|
| `description` | 图片描述(可作为 alt 文本) |
|
||||||
|
| `urls.regular` | 常规尺寸链接(可直接用于 Markdown) |
|
||||||
|
| `urls.small` | 小尺寸链接 |
|
||||||
|
| `urls.thumb` | 缩略图链接 |
|
||||||
|
| `user.name` | 作者名(署名用) |
|
||||||
|
| `user.links.html` | 作者主页链接 |
|
||||||
|
|
||||||
|
### 3. 嵌入 Markdown
|
||||||
|
|
||||||
|
```markdown
|
||||||
|

|
||||||
|
|
||||||
|
*Photo by John Doe on Unsplash*
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## N8N 集成方式
|
||||||
|
|
||||||
|
### 方式一:Unsplash 官方节点
|
||||||
|
|
||||||
|
N8N 有 Unsplash 官方节点(推荐):
|
||||||
|
|
||||||
|
```
|
||||||
|
节点:Unsplash Node
|
||||||
|
操作:Search Photos
|
||||||
|
Query:AI automation
|
||||||
|
Num Results:1
|
||||||
|
```
|
||||||
|
|
||||||
|
### 方式二:HTTP Request 手动调用
|
||||||
|
|
||||||
|
如果 N8N 没有 Unsplash 节点,可以用 **HTTP Request** 节点:
|
||||||
|
|
||||||
|
```
|
||||||
|
Method:GET
|
||||||
|
URL:https://api.unsplash.com/search/photos
|
||||||
|
Headers:
|
||||||
|
Authorization:Client-ID 你的AccessKey
|
||||||
|
Query Parameters:
|
||||||
|
query:AI automation
|
||||||
|
per_page:1
|
||||||
|
```
|
||||||
|
|
||||||
|
### 3. 在 N8N 中提取图片 URL
|
||||||
|
|
||||||
|
Expression 写法:
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
// 取第一张图片的 regular URL
|
||||||
|
$json.results[0].urls.regular
|
||||||
|
|
||||||
|
// 取第一张图片的描述
|
||||||
|
$json.results[0].description || $json.results[0].alt_description
|
||||||
|
|
||||||
|
// 取作者信息
|
||||||
|
$json.results[0].user.name
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 在内容流水线中的使用场景
|
||||||
|
|
||||||
|
### 场景 1:封面图生成
|
||||||
|
|
||||||
|
AI 改写时要求模型输出一个封面图搜索关键词,如:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"title": "AI Agent 自动化工作流实战",
|
||||||
|
"cover_keyword": "robot workflow automation technology"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
N8N 用这个 keyword 调用 Unsplash,拿到封面图 URL。
|
||||||
|
|
||||||
|
### 场景 2:文内插图
|
||||||
|
|
||||||
|
AI 改写时在文章中插入占位符:
|
||||||
|
|
||||||
|
```markdown
|
||||||
|
这里是正文内容...
|
||||||
|
|
||||||
|
[IMAGE: teamwork collaboration]
|
||||||
|
|
||||||
|
更多内容...
|
||||||
|
```
|
||||||
|
|
||||||
|
N8N 识别 `[IMAGE: xxx]` 占位符,用 xxx 搜索 Unsplash 替换。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 版权注意事项
|
||||||
|
|
||||||
|
Unsplash 图片**可免费商用**,但需遵守以下规则:
|
||||||
|
|
||||||
|
1. **署名**:建议在图片下方注明作者名和 Unsplash
|
||||||
|
2. **不可单独销售**:不能把 Unsplash 图片单独作为商品出售
|
||||||
|
3. **禁止直接链接**:不要用图片的 CDN 链接作为独立网站图片(会触发防盗链)
|
||||||
|
|
||||||
|
**安全做法**:下载图片到自己的图床或 OSS,用自己的域名展示。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 常见问题
|
||||||
|
|
||||||
|
**Q:API 返回 401 Unauthorized?**
|
||||||
|
> 检查 Access Key 是否正确,是否包含空格或引号。
|
||||||
|
|
||||||
|
**Q:搜索结果为空?**
|
||||||
|
> 尝试用英文关键词,或减少 per_page 数量。
|
||||||
|
|
||||||
|
**Q:频率超限(429)?**
|
||||||
|
> 等待 1 小时,或申请更高配额。
|
||||||
Reference in New Issue
Block a user