-1

私はPythonで非常に単純なircボットを作成しようとしていますが、ソケットを使用してそれを行う方法を理解できません。私が望んでいるのは、ircサーバーに接続し、ニックネーム(および名前)を設定し、チャネルに参加して、ircチャネルにメッセージを書き込むことだけです。

私を正しい方向に導くことができる人、またはコードの小さな例はありますか?

import socket

name = raw_input("Enter your name: ")
nick = raw_input("IRC Handle: ")

irc_serv = "irc.freenode.net"
port = 6667
conn = socket.socket()
conn.connect((irc_serv, port))

conn.send("NICK "), nick
conn.send("NAME "), nick
conn.send("JOIN #king")
conn.send("PRIVMSG #king test message")

私はそれを実行し、名前とニックネームを入力しますが、チャネルに参加しません(チャネルに接続されているxchatで確認してください)

4

1 に答える 1

2

J. Steenが指摘したように、あなたの質問はこのサイトには広すぎて、単一の答えはありません。

ここにいくつかのスターターアドバイスがあります:

Pythonを使用しています。Pythonには、たくさんのことを支援するために作られたたくさんのライブラリがあります。まず、あなたが必要としていることがすでに誰かによって行われているかどうかを調べてみてください。車輪の再発明をしないでください。

あなたの場合、IRCプロトコルが実装されているTwistedを紹介できます。Twistedは、よく書かれ、よく維持されている、モジュール式の非同期フレームワークであり、それを使用することをお勧めします。

これがツイステッドIRCクライアントAPIドキュメントです。

これは、 twisedで実装されたIRCボットの例です。あなたはそれを調べて始めることができます。

あなたは始めているようですので、私は手伝いましたが、次回はグーグルを試すことができます。このサイトは一般的にスプーン給餌をサポートしておらず、ユーザーは助けを求める前に自分で何かを試すことをお勧めします。これはより良い学習につながります。

あなたのプロジェクトに幸運を祈ります。

PS:この質問はすでにここで質問され、回答されている可能性があります。それ以上に、最初に検索する必要がある理由です。

于 2012-07-24T08:44:25.910 に答える