同时发布到Mastodon和Bluesky的小型CLI
项目描述
Not my ex

同时发布到Mastodon和Bluesky的小型应用程序。
显然,基于 cuducos/from-my-ex
。
它支持
- 使用简单的CLI命令或GUI界面将状态更新发布到两个网络
- 发布带图片的内容
- 包括图像的alt文本
- 设置发布语言
它不支持
- 标记其他用户(它们在各个平台上会有不同的ID和服务器)
入门指南
要求
- Python 3.9或更高版本
环境变量
一般设置
名称 | 描述 | 示例 | 默认值 |
---|---|---|---|
NOT_MY_EX_DEFAULT_LANG |
2字母ISO 639-1代码 | "pt" |
None |
发布到 Bluesky
名称 | 描述 | 示例 | 默认值 |
---|---|---|---|
NOT_MY_EX_BSKY_AGENT |
Bluesky实例 | "https://bsky.social" |
"https://bsky.social" |
NOT_MY_EX_BSKY_EMAIL |
在Bluesky中使用的电子邮件 | "cuducos@mailinator.com" |
None |
NOT_MY_EX_BSKY_PASSWORD |
在Bluesky中使用的密码 | 如App Passwords中创建。 | None |
未设置NOT_MY_EX_BSKY_EMAIL
或NOT_MY_EX_BSKY_PASSWORD
将禁用向Bluesky发布。
要向Mastodon发布
名称 | 描述 | 示例 | 默认值 |
---|---|---|---|
NOT_MY_EX_MASTODON_INSTANCE |
Mastodon实例 | "https://tech.lgbt" |
"https://mastodon.social" |
NOT_MY_EX_MASTODON_TOKEN |
Mastodon访问令牌 | 前往您的设置,开发然后创建应用程序以获取访问令牌。选择write:statuses 和write:media 作用域。 |
None |
未设置NOT_MY_EX_MASTODON_TOKEN
将禁用向Mastodon发布。
安装
$ pip install not-my-ex
如果您想使用GUI,请运行pip install not-my-ex[gui]
。
用法
CLI
$ not-my-ex post "Magic, madness, heaven, sin" --images /tmp/1989.gif
您可以选择跳过--images
或传递多个图片(例如--images taylor.jpg --images swift.gif
)。
GUI
如果您已安装GUI扩展
$ not-my-ex gui
这是它的样子
API
from asyncio import gather
from httpx import AsyncClient
from not_my_ex.bluesky import Bluesky
from not_my_ex.mastodon import Mastodon
from not_my_ex.media import Media
from not_my_ex.post import Post
async def main():
media_tasks = tuple(
Media.from_img(path, alt=alt)
for path, alt in (("taylor.jpg", "Taylor"), ("swift.jpg", "Swift"))
)
media = await gather(*media_tasks)
post = Post(text="Magic, madness, heaven, sin", media=media, lang="en")
async with AsyncClient() as http:
post_tasks = tuple(cls(http).post(post) for cls in (Bluesky, Mastodon))
await gather(*post_tasks)
在Post
中,media
和lang
都是可选的。在Media
中,alt
是可选的。
贡献
$ uv run python -m pytest
项目详情
下载文件
下载适用于您的平台文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分发
not_my_ex-0.1.1.tar.gz (180.3 kB 查看哈希值)
构建分发
not_my_ex-0.1.1-py3-none-any.whl (42.4 kB 查看哈希值)