# 小红书笔记上传器 - 快速开始指南 ## 🚀 5分钟上手 ### 第一步:安装依赖 ```bash cd /Users/yarrow/autoUpload pip install -r requirements.txt playwright install chromium ``` ### 第二步:获取Cookie ```python python examples/get_xiaohongshu_cookie.py ``` 扫码登录后,Cookie会自动保存到 `cookies/xiaohongshu_note/account.json` ### 第三步:上传图文笔记 ```python import asyncio from pathlib import Path from uploader.xhs_note_uploader import XiaoHongShuImageNote async def main(): note = XiaoHongShuImageNote( title="我的第一条笔记✨", content="测试上传功能~", tags=["测试", "分享"], image_paths=["videos/demo.png"], publish_date=0, # 0=立即发布 account_file="cookies/xiaohongshu_note/account.json", headless=False # 有头模式,可以看到浏览器操作 ) await note.main() asyncio.run(main()) ``` --- ## 📋 核心参数说明 | 参数 | 说明 | 示例 | |------|------|------| | `title` | 标题(最多30字) | `"今天的下午茶☕️"` | | `content` | 正文(最多1000字) | `"分享一下..."` | | `tags` | 话题标签(建议≤3个) | `["下午茶", "咖啡"]` | | `image_paths` | 图片列表(1-9张) | `["1.jpg", "2.jpg"]` | | `publish_date` | 发布时间 | `0`(立即)或`datetime`(定时) | | `account_file` | Cookie路径 | `"cookies/account.json"` | | `location` | 地点(可选) | `"上海市·静安区"` | | `headless` | 无头模式 | `False`(推荐有头) | --- ## 📝 完整示例 ### 示例1:立即发布(单图) ```python import asyncio from uploader.xhs_note_uploader import XiaoHongShuImageNote async def upload_single_image(): note = XiaoHongShuImageNote( title="早安☀️", content="新的一天开始啦~", tags=["早安", "日常"], image_paths=["morning.jpg"], publish_date=0, account_file="cookies/xiaohongshu_note/account.json", headless=False ) await note.main() asyncio.run(upload_single_image()) ``` ### 示例2:立即发布(多图) ```python import asyncio from uploader.xhs_note_uploader import XiaoHongShuImageNote async def upload_multiple_images(): note = XiaoHongShuImageNote( title="今日穿搭分享👗", content="给大家分享一下今天的穿搭~\n简约又时尚!", tags=["穿搭", "时尚", "OOTD"], image_paths=["look1.jpg", "look2.jpg", "look3.jpg"], publish_date=0, account_file="cookies/xiaohongshu_note/account.json", location="北京市·朝阳区", headless=False ) await note.main() asyncio.run(upload_multiple_images()) ``` ### 示例3:定时发布 ```python import asyncio from datetime import datetime, timedelta from uploader.xhs_note_uploader import XiaoHongShuImageNote async def upload_scheduled(): # 明天上午10点发布 tomorrow_10am = datetime.now() + timedelta(days=1) tomorrow_10am = tomorrow_10am.replace(hour=10, minute=0, second=0) note = XiaoHongShuImageNote( title="明日预告📢", content="明天10点见~", tags=["预告", "明天见"], image_paths=["preview.jpg"], publish_date=tomorrow_10am, # 定时发布 account_file="cookies/xiaohongshu_note/account.json", headless=False ) await note.main() asyncio.run(upload_scheduled()) ``` ### 示例4:批量上传(安全间隔) ```python import asyncio import random from uploader.xhs_note_uploader import XiaoHongShuImageNote async def batch_upload(): notes_data = [ { "title": "笔记1", "content": "内容1", "tags": ["标签1"], "images": ["1.jpg"], }, { "title": "笔记2", "content": "内容2", "tags": ["标签2"], "images": ["2.jpg"], }, ] for i, data in enumerate(notes_data): print(f"\n上传第 {i+1}/{len(notes_data)} 条笔记...") note = XiaoHongShuImageNote( title=data["title"], content=data["content"], tags=data["tags"], image_paths=data["images"], publish_date=0, account_file="cookies/xiaohongshu_note/account.json", headless=False ) await note.main() # 间隔10-15分钟 if i < len(notes_data) - 1: wait_min = random.randint(10, 15) print(f"⏰ 等待 {wait_min} 分钟...") await asyncio.sleep(wait_min * 60) asyncio.run(batch_upload()) ``` --- ## ⚙️ 优化后的新特性 ### 1. 批量图片上传 ```python # 一次性上传多张图片(更快!) image_paths=["1.jpg", "2.jpg", "3.jpg", "4.jpg", "5.jpg"] ``` ### 2. 精准元素定位 ```python # 使用优化后的选择器,定位成功率 95%+ # 自动适配小红书最新页面结构 ``` ### 3. 智能等待机制 ```python # 自动等待图片预览加载完成 # 显示实时进度:已加载 3/5 张图片 ``` ### 4. 人类化输入 ```python # 三种速度模式: # - 标题:80-150ms/字符 # - 正文:100-200ms/字符 # - 标签:500-800ms/字符(极慢,防检测) ``` --- ## 🛡️ 安全建议 ### ✅ 推荐配置 ```python { 'headless': False, # 有头模式 'tags_limit': 3, # 最多3个标签 'upload_interval': 600, # 间隔10分钟 'max_notes_per_day': 5, # 每天最多5条 } ``` ### ❌ 不推荐配置 ```python { 'headless': True, # 无头模式不稳定 'upload_interval': 60, # 间隔太短 'max_notes_per_day': 20, # 数量太多,易触发风控 } ``` --- ## 🐛 常见问题 ### Q1: 找不到上传元素? **A**: 使用有头模式检查页面是否正确加载 ```python headless=False # 设置为False观察浏览器 ``` ### Q2: Cookie失效? **A**: 重新获取Cookie ```python from uploader.xhs_note_uploader.main import xiaohongshu_note_cookie_gen await xiaohongshu_note_cookie_gen("cookies/account.json") ``` ### Q3: 标签输入无效? **A**: - 减少标签数量(≤3个) - 使用简短标签文字 - 确保标签不包含特殊字符 ### Q4: 图片上传慢? **A**: - 优化图片大小(建议<5MB) - 使用常见格式(.jpg, .png) - 检查网络连接 --- ## 📖 更多资源 - **详细文档**: `docs/xhs_note_uploader_optimization.md` - **设计文档**: `docs/xhs_note_uploader_design.md` - **完整示例**: `examples/upload_note_to_xiaohongshu_image.py` - **测试脚本**: `examples/test_xhs_note_uploader.py` --- ## 🎯 下一步 1. **测试上传**: 运行测试脚本验证功能 ```bash python examples/test_xhs_note_uploader.py ``` 2. **查看日志**: 检查上传详细日志 ```bash # 日志包含每个步骤的执行情况 ``` 3. **优化内容**: 根据需求调整标题、正文、标签 ```python # 真实、有价值的内容更容易获得推荐 ``` 4. **定期维护**: 定期手动登录维持账号活跃度 ```python # 建议每周至少手动登录一次 ``` --- ## 💡 专业提示 1. **图片质量**: 使用高质量、原创图片 2. **文案优化**: 标题要吸引人,正文要真诚 3. **标签选择**: 选择精准、热门的话题标签 4. **发布时间**: 选择用户活跃时段(早8点、午12点、晚8点) 5. **互动维护**: 及时回复评论,提高互动率 --- **祝你使用愉快!** 🎉