用 Python 2 編寫的簡單 IRC(互聯網中繼聊天)客戶端
特別感謝 Ilie Cebanu (https://github.com/NotQuiteMelvin) 的 Python 3 版本。
若要使用選定的使用者名稱加入任何頻道(在 Freenode 上),只需執行 irc_client.py 並將所需的使用者名稱作為第一個參數,後跟頻道名稱(帶以下 # 或不含 # ):
./irc_client.py myusername channeltojoin
或者
./irc_client.py myusername #channeltojoin // actually not working :)
似乎是用下面的 # 中斷腳本傳遞通道名稱,因為 Python 將 # 視為註解的開頭?
這是它現在的樣子(左邊控制台:irc_client.py,右邊控制台:irssi):
我已新增編譯為 Python 字節碼檔案(擴展名為 .pyc)的版本。編譯是透過命令完成的:
$ python -m compileall irc_client.py
獲取二進位版本而不是原始程式碼可能會很有用。
多行訊息不起作用(與沒有其他用戶發布訊息時伺服器沒有回應有關)
輸出有時會被伺服器訊息(如 PING)搞亂
缺乏使用者體驗 - 只能發送簡單的一行訊息:)
irc.freenode.net(伺服器)和連接埠 6667 硬編碼 - 但可以輕鬆新增為參數
通道名稱必須在不帶前導的情況下傳遞#
彩色輸出(待定)
https://en.wikipedia.org/wiki/Internet_Relay_Chat
RFC 1459(網際網路中繼聊天協定)
https://tools.ietf.org/html/rfc1459
IRC 伺服器回應代碼參考
https://www.alien.net.au/irc/irc2numerics.html
RFC 2812(網際網路中繼聊天:客戶端協定):
https://tools.ietf.org/html/rfc2812
其他資源:
http://chi.cs.uchicago.edu/chirc/irc_examples.html
http://books.msspace.net/mirrorbooks/irchacks/059600687X/irchks-CHP-13-SECT-2.html