2016年7月4日 星期一

Kalpha sample code -- 原型

因為twitch的聊天室是使用irc chat room,
基本上, twitch的聊天室好玩, 以及這麼多花樣的原因,
就是因為irc chat room非常好連接並獲取data,
所以這篇主要是介紹利用python socket連接irc chat room,
讓大家都可以基本的獲取聊天室的訊息, 並做出自己想要的robot,


sample code:

import socket

botnick    = "e4e2e7343"  #自己的名字
bufsize    = 2048
channel    = "#e4e2e7343"  #欲加入channel的名字
port       = 6667
server     = "irc.twitch.tv"
PASS = "oauth:*************" # your Twitch OAuth token
master     = "e4e2e7343"   #自己的名字
uname      = "e4e2e7343"   #自己的名字
realname   = "e4e2e7343"   #自己的名字

def JoinChan (chan):
    global ircsock
    ircsock.send ("JOIN "+ chan +"\n")

def Main():
    global ircsock
    
    #presetting, socket連線前的前置作業    
    ircsock = socket.socket (socket.AF_INET, socket.SOCK_STREAM)
    ircsock.connect ((server, port))
    ircsock.send ("PASS {}\r\n".format(PASS).encode("utf-8"))
    ircsock.send ("USER " + uname + " 2 3 " + realname + "\n")
    ircsock.send ("NICK "+ botnick + "\n")
    
    #利用uname的帳號, 連線上channel
    JoinChan (channel)          

    #主要迴圈
    while True: 
        #接聽訊息
        ircmsg = ircsock.recv (bufsize)
        ircmsg = ircmsg.strip ('\n\r')

        #如果沒有收到訊息, Ping socket
        if ircmsg.find ("PING :") != -1:
            ping()
        else:
            #else這裡就是主要處理ircmsg的地方
            #一般需要做的事情就是先將user name與message分開, 在進行想要的處理
            print ircmsg

裡面大多沒甚麼問題, oauth token應該也都能google的到,
如果有不清楚地歡迎在底下留言,
希望大家都能做出自己理想的機器人,
其實還有很多需要處理的,
例如thread, exception等等
以後有更進一步的心得再上來分享,
也歡迎有神人們分享

XGBoost (python3.5) (windows) (anaconda) plot_tree 修正

windows anaconda下載的XGBoost plot_tree default function畫出來只會顯示 f0, f1, f2......作為feature的切割 如上圖 參考了網路上的做法, 做了修正 1. 首先要建立一個fmap的文件 ...