81 lines
2.2 KiB
Python
81 lines
2.2 KiB
Python
"""
|
||
测试网络图片下载功能
|
||
"""
|
||
import asyncio
|
||
import json
|
||
from xhs_publish import XHSPublishService
|
||
|
||
|
||
async def test_network_images():
|
||
"""测试网络图片功能"""
|
||
|
||
print("="*50)
|
||
print("网络图片下载功能测试")
|
||
print("="*50)
|
||
print()
|
||
|
||
# 1. 准备测试 Cookie(从 cookies.json 读取)
|
||
try:
|
||
with open('cookies.json', 'r', encoding='utf-8') as f:
|
||
cookies = json.load(f)
|
||
print(f"✅ 成功读取 {len(cookies)} 个 Cookie")
|
||
except FileNotFoundError:
|
||
print("❌ cookies.json 文件不存在")
|
||
print("请先运行登录获取 Cookie:")
|
||
print(" python xhs_cli.py login <手机号> <验证码>")
|
||
return
|
||
|
||
# 2. 准备测试数据
|
||
title = "【测试】网络图片发布测试"
|
||
content = """测试使用网络 URL 图片发布笔记 📸
|
||
|
||
本次测试使用了:
|
||
✅ 网络 URL 图片(picsum.photos)
|
||
✅ 自动下载功能
|
||
✅ 临时文件管理
|
||
|
||
如果你看到这条笔记,说明网络图片功能正常!"""
|
||
|
||
# 3. 使用网络图片 URL
|
||
images = [
|
||
"https://picsum.photos/800/600?random=test1",
|
||
"https://picsum.photos/800/600?random=test2",
|
||
"https://picsum.photos/800/600?random=test3"
|
||
]
|
||
|
||
print(f"\n测试图片 URL:")
|
||
for i, url in enumerate(images, 1):
|
||
print(f" {i}. {url}")
|
||
|
||
tags = ["测试", "网络图片", "自动发布"]
|
||
|
||
# 4. 创建发布服务
|
||
print("\n开始测试发布...")
|
||
publisher = XHSPublishService(cookies)
|
||
|
||
# 5. 执行发布
|
||
result = await publisher.publish(
|
||
title=title,
|
||
content=content,
|
||
images=images,
|
||
tags=tags,
|
||
cleanup=True # 自动清理临时文件
|
||
)
|
||
|
||
# 6. 显示结果
|
||
print("\n" + "="*50)
|
||
print("测试结果:")
|
||
print(json.dumps(result, ensure_ascii=False, indent=2))
|
||
print("="*50)
|
||
|
||
if result.get('success'):
|
||
print("\n✅ 测试成功!网络图片功能正常")
|
||
if 'url' in result:
|
||
print(f"📎 笔记链接: {result['url']}")
|
||
else:
|
||
print(f"\n❌ 测试失败: {result.get('error')}")
|
||
|
||
|
||
if __name__ == "__main__":
|
||
asyncio.run(test_network_images())
|