大家好,我是何三,80后老猿,独立开发者
最近刷小红书,发现一个有趣的现象——各种星座运势、AI算命的内容异常火爆。点开几个账号一看,好家伙,日更几十篇,篇篇互动量惊人。更神奇的是,这些内容看似个性化,实则套路满满。
我不禁想起去年帮朋友写的一个小脚本,用Python+AI自动生成星座运势内容。当时只是觉得好玩,没想到现在竟成了流量密码。今天就把这个"黑科技"分享给大家,看看这些"AI算命大师"们是怎么批量生产内容的。
星座运势的套路解析
仔细观察那些热门星座运势内容,你会发现它们都有固定模板:
- 开头:用一句概括性的话吸引注意
- 中间:分爱情、事业、财运等方面给出预测
- 结尾:加上互动话术或心理暗示
比如:"白羊座本周贵人运爆棚!事业上会有意想不到的突破..."
这种结构化内容简直就是为AI量身定制的。我们完全可以用Python+大语言模型批量生成。
技术实现方案
核心思路很简单:
- 准备星座和运势关键词
- 构建提示词模板
- 调用大模型API生成内容
- 自动排版发布
先看看完整代码,我再一步步解释:
import random
import requests
import json
from datetime import datetime, timedelta
# 配置DeepSeek API
DEEPSEEK_API_KEY = "你的API_KEY"
API_URL = "https://api.deepseek.com/v1/chat/completions"
# 星座列表
ZODIAC_SIGNS = [
"白羊座", "金牛座", "双子座", "巨蟹座",
"狮子座", "处女座", "天秤座", "天蝎座",
"射手座", "摩羯座", "水瓶座", "双鱼座"
]
# 运势关键词库
KEYWORDS = {
"love": ["桃花运", "邂逅", "复合", "甜蜜", "冷战", "理解", "包容", "浪漫"],
"career": ["升职", "加薪", "跳槽", "合作", "项目", "贵人", "挑战", "机遇"],
"wealth": ["偏财", "正财", "投资", "消费", "储蓄", "理财", "债务", "收益"],
"health": ["精力", "睡眠", "饮食", "运动", "压力", "免疫力", "情绪", "平衡"]
}
def generate_horoscope(sign):
"""生成单个星座的运势内容"""
# 随机选择本周运势基调
overall_luck = random.choice(["极佳", "不错", "平稳", "需谨慎", "挑战多"])
# 构建提示词
prompt = f"""
你是一位专业的星座运势撰写人,请为{sign}生成一篇本周运势分析,要求:
1. 开头用一句吸引眼球的话概括本周运势,整体运势为{overall_luck}
2. 分爱情、事业、财运、健康四个方面分析,每方面2-3句话
3. 使用生动具体的描述,避免笼统
4. 结尾加上鼓励或提醒的话语
5. 适当使用emoji表情
参考关键词:
{KEYWORDS}
"""
headers = {
"Content-Type": "application/json",
"Authorization": f"Bearer {DEEPSEEK_API_KEY}"
}
payload = {
"model": "deepseek-chat",
"messages": [{"role": "user", "content": prompt}],
"temperature": 0.7,
"max_tokens": 800
}
response = requests.post(API_URL, headers=headers, data=json.dumps(payload))
result = response.json()
return result["choices"][0]["message"]["content"]
def batch_generate_horoscopes():
"""批量生成所有星座运势"""
horoscopes = {}
for sign in ZODIAC_SIGNS:
content = generate_horoscope(sign)
horoscopes[sign] = content
print(f"已生成 {sign} 运势")
return horoscopes
def save_to_markdown(horoscopes):
"""保存为Markdown格式,方便发布到小红书"""
today = datetime.now().strftime("%Y年%m月%d日")
filename = f"星座运势_{today}.md"
with open(filename, "w", encoding="utf-8") as f:
f.write(f"# ⭐ 十二星座本周运势({today})\n\n")
for sign, content in horoscopes.items():
f.write(f"## ♈ {sign}\n\n")
f.write(content + "\n\n")
f.write("---\n\n")
print(f"运势已保存到 {filename}")
if __name__ == "__main__":
print("开始生成星座运势...")
horoscopes = batch_generate_horoscopes()
save_to_markdown(horoscopes)
代码解析
这个脚本的核心在于提示词工程(prompt engineering)。我们给AI的指令越明确,生成的内容质量就越高。
-
关键词库设计:我们建立了爱情、事业、财运、健康四个维度的关键词库,确保内容多样性。
-
动态提示词:每次生成时随机选择运势基调(极佳/不错/需谨慎等),避免内容雷同。
-
格式控制:明确要求分段落、使用emoji、结尾有互动话术,符合社交媒体传播特点。
运行脚本后,你会得到一个Markdown文件,里面包含12星座的本周运势,格式已经排好,直接复制到小红书就能发布。
进阶玩法
如果你真的想把这个做成"生意",还可以考虑以下优化:
-
个性化包装:给每个星座配一张AI生成的星座图(用Midjourney或Stable Diffusion)
-
定时发布:用Python的schedule库设置定时任务,每天自动发布
-
多平台分发:增加自动发布到微信公众号、知乎等平台的功能
-
用户互动:收集评论区高频问题,迭代你的关键词库
注意事项
-
这类内容虽然流量大,但要注意平台规则,避免被判定为封建迷信
-
建议加入"娱乐向"声明,表明内容仅供娱乐
-
API调用有成本,建议先小规模测试,找到最经济的生成方案
最后的话
看到这里,你可能会想:这不是在制造"内容垃圾"吗?确实,从内容质量角度看,这种批量生产的方式值得商榷。但换个角度想,很多读者看星座运势,要的不过是一点心理安慰或社交谈资。
技术本身没有善恶,关键看如何使用。这个脚本也可以用来做正经事,比如自动生成每日工作小结、健身计划等模板化内容。重要的是,我们要明白其中的原理,而不是盲目跟风。
如果你对这类自动化内容生成感兴趣,不妨从这个小项目开始,探索AI在内容创作中的更多可能性。毕竟,未来已来,只是分布不均。