取得批踢踢實業坊目前線上人數

取得批踢踢實業坊目前線上人數

本範例透過TcpClient去取得PTT 批踢踢實業坊 目前線上的使用者

以下是關鍵的一段,有興趣的人再下載範例

telnet方法參考這裡

 


        public bool open_connect()
        {
            bool blresult;
            string strtemp="";
            
            blresult = true; 
 

            try
            {
                // new socket
                //telnet_tcp_client = new TcpClient(this.strhost, 21);
                telnet_tcp_client = new TcpClient(this.strhost, 23);

                System.Threading.Thread.Sleep(ilogin_wait_time);
                // read host info data
                strtemp = recv_data_from_host();
 
                Regex ex = new Regex(@"\s?\[31m\?i\d{0,6}");
                string strtempb = "";
                foreach (Match m in ex.Matches(strtemp))
                {
                    foreach (Capture c in m.Captures)
                    {
                         strtempb = c.Value.Replace(@"[31m?i","");
                    }
                }
                Console.Write("目前線上共有" + strtempb + "名使用者");

            }
            catch (Exception ex)
            {
                blresult = false;
            }
            return blresult;
        }

 


如有錯誤 歡迎指正