中继是一个irc微框架,闻起来太像web框架了

relay-framework的Python项目详细描述


一个irc微框架闻起来太像web框架了。

接力是一个玩具项目,它的目标是让我尝试框架设计, 了解有关IRC协议的更多信息,并替换可用的 irc python库:它们中的大多数并没有取悦我。

安装

我建议您使用virtualenv

$ pip install relay-framework

示例

这是一个机器人的例子,它发送任何在'之后发送的东西!回音在私人信息中:

fromrelayimportRelay,auto_join,auto_pongfromrelay.constantsimportprivmsgbot=Relay("echobot")@bot.handler(privmsg)defecho(target,message,sender,*args,**kwargs):ifnotmessage.startswith("!echo "):returnsender_nick=sender.split('@')[0].split('!')[0]# We just want the nickmessage=message[6:]# We just want whatever is after '!echo 'iftarget==bot.client['nick']:result="PRIVMSG {sender_nick} :{sender_nick}: {message}"else:result="PRIVMSG {{target}} :{sender_nick}: {message}"yieldresult.format(sender_nick=sender_nick,message=message)if__name__=="__main__":bot.register(auto_pong)bot.register(auto_join(['#tests']))bot.config(from_env=True).run()

运行它:

$ RELAY_HOST=irc.example.net RELAY_NICK=echobot python echobot.py

更改日志

0.1.0:Initial version, client accepts handlers, connects and matches data with those.

待办事项

  • 编写一个像样的irc客户端实现
  • 为中继类编写测试
  • 编写文档
  • 子类中继以允许regexp路由

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java LineNumberReader。如果查询行为不正确,则返回readLine()   java包含了一个使用AndroidX的工具栏,这让我的应用程序崩溃了   JVM设置通过“java jar”运行应用程序的最佳实践   java如何获取ImageButton宽度   java Oracle SQLLDR实用程序无响应   列出Java获取对象的arrayList中最常见的元素   java使用带有FlowLayout的getContentpane对布局应用更改,但不起作用为什么?   在java中,我可以在画布上绘制画布吗?   编译游戏代码时发生java异常错误   从firestore获取java Webview失败   java将TableLayout中单元格的内容向右对齐   java无法在发布模式下启动活动(使用proguard安卓optimize配置)   java允许在线程期间进行GUI更新。睡觉   java如何对以变量为列表的列表进行排序   API URL上的java Google云端点异常