11

基本的に次のことを行うボットを作成したいと思います。

  1. 部屋に耳を傾け、ユーザーと対話し、ボットをPMするように促します。
  2. ユーザーがPMを実行すると、ボットはさまざまなAI技術を使用してクライアントと連携します。

PythonでIRCライブラリまたはソケットを使用する必要がありますか、それともボットフレームワークがさらに必要ですか。

あなたならどうしますか?

ありがとう!

これが私が現在使用しているコードですが、動作していません。

#!/usr/bin/python 
import socket
network = 'holmes.freenet.net'
port = 6667
irc = socket.socket ( socket.AF_INET, socket.SOCK_STREAM )
irc.connect ( ( network, port ) )
irc.send ( 'NICK PyIRC\r\n' )
irc.send ( 'USER PyIRC PyIRC PyIRC :Python IRC\r\n' )
irc.send ( 'JOIN #pyirc\r\n' )
irc.send ( 'PRIVMSG #pyirc :Can you hear me?\r\n' )
irc.send ( 'PART #pyirc\r\n' )
irc.send ( 'QUIT\r\n' )
irc.close()
4

6 に答える 6

12

正気のデザインにしたい場合は、TwistedまたはAsynchatを使用してください。ソケットだけでそれを行うことは可能ですが、なぜ最初からそれを行うのですか?

于 2009-07-08T22:35:08.600 に答える
7

AI技術を取り入れたい場合は、Python用のAIMLパッケージを検討することをお勧めします。これは、ALICEボットが行われているのと同じテクノロジーです。

于 2009-07-08T22:29:30.983 に答える
5

AI部分を作成したいのであれば、IRC接続に必要なすべてのコードを自分で書くのはなぜですか?

SupyBotを使用して、AIコードをプラグインとして作成することをお勧めします。かなり理解できるドキュメントとたくさんのサンプルコードがあります。また、AIを補完する可能性のあるあらゆる種類の用途に対応するプラグインが大量に付属しています。

于 2010-02-08T20:03:32.243 に答える
3

約2年後に返信するので、これはGoogle社員のためだけに書いています:-P

https://github.com/julienpalard/yauibで私の「YetAnotherUselessIRC Bot」を試してみてください。これにより、ボットの各機能を任意の言語でコーディングできます。

于 2011-03-20T13:18:35.353 に答える
2

私はirclibを使用して(非常にくだらない、そして長い間リファクタリングされている)IRCボットを作成しました。ドキュメントはほとんど何もありませんが、ソケット接続などをすべて行う必要がなくなります。これは、私が本当に扱いたくないことです。しかし、それぞれに。

于 2009-07-09T06:13:47.827 に答える
2

プロトコルを自分で実装する代わりに、既存のIRCライブラリを使用します。

于 2010-01-05T05:40:52.080 に答える