程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 開源一個社交網站模擬登錄的庫,開源社交模擬登錄

開源一個社交網站模擬登錄的庫,開源社交模擬登錄

編輯:C#入門知識

開源一個社交網站模擬登錄的庫,開源社交模擬登錄


網站的登錄是抓取某些網站的必須步驟,大多數情況我們都是使用一個真實的浏覽器去提交我們的登錄信息,但是在代碼中嵌套浏覽器不僅會帶來性能損耗,還會帶來崩潰的風險。因此就有了這個使用httpRequest來模擬登錄的庫 imitate-login ,目前僅有微博網頁版和微博Wap版的實現,其它計劃實現會根據項目關注度來決定(Star & fork)是否更新以及更新時間。

如果這個項目侵犯了您的權益,請及時與我聯系(可通過留言或郵件)!我會在收到的一周內協商處理。

這個類庫僅對外提供一個方法:

LoginResult Login(1: string userName, 2: string password, 3: LoginSite loginSite);

這個方法位於ImitateLogin的LoginHelper類中,使用之前需要先對其進行實例化。通過傳入 用戶名、密碼以及登錄的網站,返回一個包含登錄結果狀態、描述信息以及Cookies字典的類。

這個類庫並沒有提供對驗證碼的支持,微博可以通過設置登錄保護來避免驗證碼的出現:

位於 設置->賬號安全->登錄保護

這個項目支持使用 Apache Thrift 來實現多語言環境下的RPC調用,首先安裝Thrift,然後使用以下命令創建目標語言下的接口:

thrift --gen <language> ImitateLogin.thrift

將上面命令中的<language>替換為你所使用的語言。然後在csharp端添加服務端得代碼:

public void Start() 
{ 
    TServerSocket serverTransport = new TServerSocket(7901, 0, false); 
    Login.Processor processor = new Login.Processor(new LoginHelper()); 
    TServer server = new TSimpleServer(processor, serverTransport); 
    Console.WriteLine("Starting server on port 7901 ..."); 
    server.Serve(); 
}

 

然後在其它語言(例如JAVA)中實現客戶端的方法:

TTransport transport = new TSocket("localhost", 7901);
transport.open();
TProtocol protocol = new TBinaryProtocol(transport);
Login.Client client = new Login.Client(protocol);
client.Login("username", "password", LoginSite.Weibo);

 

將上述語句中的 username 和 password 替換為真實用於登錄的微博賬戶。

你可以在包含Mono或.Net Framework的環境下運行 imitate-login 類庫。該類庫裡包含一個使用Gtk+創建的測試窗體程序,如果你希望使用它,需要額外安裝 Gtk+ for Mono.

該類庫已經完成的社交網站支持:

  • Weibo
  • WeiboWap

計劃完成的支持:

  • Taobao
  • QQ
  • Facebook
  • Twitter
  • Google

計劃支持部分會根據項目關注度來決定(Star & fork)是否更新以及更新時間。

如果這個項目侵犯了您的權益,請及時與我聯系(可通過留言或郵件)!我會在收到的一周內協商處理。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved