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

使用Python的Tweepy发布Letterboxd影评推文,格式化问题求助

解决Tweepy推文格式化问题

问题根源

你调用tweet函数时传入的是列表而非字符串,update_status会自动把列表转为字符串格式,这就是方括号出现的原因。同时直接传列表也无法实现换行效果。

解决方案

要实现标题和链接分两行、去掉方括号,只需要将内容拼接成符合要求的字符串即可:

修改主函数调用代码

把列表替换成带换行的字符串拼接,用\n实现换行:

if __name__ == "__main__":
    api = api()
    # 拼接成带换行的目标字符串
    tweet_content = f"{review['title']}\nFull review on: {review['link']}"
    tweet(api, tweet_content)

完整修正后的代码

import tweepy
import xxxx_keys
import feedparser

feed = feedparser.parse("https://example.rss")


def api():
    auth = tweepy.OAuth1UserHandler(xxxx.api_key, xxxx.api_key_secret)
    auth.set_access_token(xxxx.access_token, xxxx.access_token_secret)

    return tweepy.API(auth)


review = {
    "title": feed.entries[0].title,
    "summary": feed.entries[0].summary,
    "link": feed.entries[0].link,
    "description": feed.entries[0].description,
}


def tweet(api: tweepy.API, message: str, image_path=None):
    if image_path:
        api.update_status_with_media(message, image_path)
    else:
        api.update_status(message)

    print("Tweet sent successfully")


if __name__ == "__main__":
    api = api()
    tweet_content = f"{review['title']}\nFull review on: {review['link']}"
    tweet(api, tweet_content)

关键说明

  • 用f-string拼接字符串,\n会被推特识别为换行符,刚好实现标题和链接分两行显示
  • 直接传入字符串而非列表,彻底避免自动转换产生的方括号
  • 注意检查拼接后的内容长度,要符合推特的字符限制,防止发送失败

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 03:35:15