一个简单的twitter bot命令行工具和库
tweebot的Python项目详细描述
要求
- Python3.3+
- Twitter帐户
安装
要安装:
make install
开发
要构建开发环境:
make venv . venv/bin/activate python main.py
配置
应用程序将只在您提供密钥文件时尝试发送tweet,该密钥文件 格式如下:
CONSUMER_KEY: dsafsafafsd CONSUMER_SECRET: iuhbfusdfiu44 ACCESS_KEY: vjhbv99889 ACCESS_SECRET: ivfjslfiguhg98
或等效的json。
必须使用--keys命令行提供文件名 争论。
命令行用法
鸣叫
发送一个简单的状态更新:
tweebot --keys {twitter-key-file} tweet "Hello world, this is my Tweebot status update!" -vv
您可以使用vs的数字控制详细程度。
可以使用更多命令行选项,请尝试--help查看所有选项。
如果对tweet文本使用-,则应用程序将使用标准 输入,可以方便地从您的机器人管道信息-即,使用 任意应用于管道到tweebot,tweebot可以发出tweet。
以下
自动跟随新的跟随者,并展开展开跟随者:
tweebot --keys {twitter-key-file} follow --auto
库使用
有两种基本方法可以在库中使用它:您可以 导入TwitterClient类并从 应用程序,或者您可以导入Tweebot的^{TT6}$函数并提供 它带有一个回调,将生成您的状态更新。
二层甲板主管道
如果您提供一个可调用的tweebot.main,则Tweebot将使用它 作为调用主函数时的回调。主要方法 实现所有命令行tweebot参数,区别在于 如果程序被要求发送一个空状态,它将 在tweet上发布方法的结果,调用时不带参数。如果你发微博 一个非空状态,该字符串将被传递给您的方法,并且 结果将被推送:
mytweebot --keys {twitter-key-file} tweet -vv
因此,这提供了一种定义新twitter机器人的简单方法:定义 形式方法:
def my_tweet_builder(status, directives): new_status = do_something() return new_status # or return new_status, new_directives
它可以忽略给定的状态,也可以以任何方式使用 希望。如果有多个bot在给定时修改状态,则 你可以独立运行它们,或者用新颖的方式将它们组合在一起 不需要重新编译-你自己选择。
直接客户使用
如果希望应用程序处于控制状态,可以简单地导入 tweebot.TwitterClient并直接使用其方法。这包括 直接访问(通过tweepy)到twitter的api,很少有定制的、方便的 方法。