/// <summary> /// 获取文件下载地址 /// </summary> /// <param name="FileID"></param> /// <param name="FolderID"></param> /// <returns></returns> public static string GetFileDownUrl(int FileID, int FolderID) { if (!Directory.Exists(PublicConfig.CacheDir)) { Directory.CreateDirectory(PublicConfig.CacheDir); } string CachePath = $"{PublicConfig.CacheDir}\\floder{NewC.Get_MD5(FileID.ToString(), false)}"; if (File.Exists(CachePath)) { return(File.ReadAllText(CachePath)); } for (int page = 1; page <= 11; page++) { string Data = NewC.GET_HTTP(PublicConfig.File.GetUserDownUrl.Replace("{skip}", ((page - 1) * 100).ToString()).Replace("{folderid}", FolderID.ToString()), PublicConfig.Cookie, false); if (Data == "") { return(FileID.ToString()); } Dictionary <string, object> Dic = JsonToDictionary.JSONToObject <Dictionary <string, object> >(Data); ArrayList AL = (ArrayList)Dic["aaData"]; foreach (ArrayList item in AL) { if (item[1].ToString().Contains(FileID.ToString())) { string Url = NewC.GetString(item[1].ToString(), "href=\"", "\">", false, 0); File.WriteAllText(CachePath, Url); return(Url); } } } return(FileID.ToString()); }
public Login(string Username, string Password) { PublicConfig.Username = Username; if (!Directory.Exists(PublicConfig.CacheDir)) { Directory.CreateDirectory(PublicConfig.CacheDir); } UserCachePath = $"{PublicConfig.CacheDir}\\{NewC.Get_MD5(Username, false)}"; if (File.Exists(UserCachePath)) { string Cookie = File.ReadAllText(UserCachePath, Encoding.UTF8); if (IsLogin(Cookie)) { //已经登陆过了 PublicConfig.Cookie = Cookie; Console.WriteLine("登录还未失效:" + Username); return; } } if (PublicConfig.DaMaTu.Username == string.Empty || PublicConfig.DaMaTu.Password == string.Empty) { throw new Exception("验证码识别平台账号未初始化。\r\n请先设置验证码识别平台的账号密码:PublicConfig.DaMaTu.Username与PublicConfig.DaMaTu.Password\r\n验证码识别平台:dama2.com"); } string[] VerCodeAndCookie = GetVerCode(); LoginCtFile(Username, Password, VerCodeAndCookie[0], VerCodeAndCookie[1]); }
/// <summary> /// 通过文件名获取文件ID /// </summary> /// <param name="Name"></param> /// <returns></returns> public static int GetFolderID(string Name) { if (!Directory.Exists(PublicConfig.CacheDir)) { Directory.CreateDirectory(PublicConfig.CacheDir); } string CachePath = $"{PublicConfig.CacheDir}\\floder{NewC.Get_MD5(Name + PublicConfig.Username, false)}"; if (File.Exists(CachePath)) { return(Convert.ToInt32(File.ReadAllText(CachePath))); } for (int page = 1; page <= 11; page++) { string Data = NewC.GET_HTTP(PublicConfig.Folder.ListUrl.Replace("{skip}", ((page - 1) * 100).ToString()), PublicConfig.Cookie, false); if (Data == "") { return(0); } Dictionary <string, object> Dic = JsonToDictionary.JSONToObject <Dictionary <string, object> >(Data); ArrayList AL = (ArrayList)Dic["aaData"]; foreach (ArrayList item in AL) { if (item[1].ToString().Contains(Name)) { string ID = NewC.GetString(item[1].ToString(), "folder_id-", "\"", false, 0); int OutID = 0; if (!int.TryParse(ID, out OutID)) { ID = NewC.GetString(item[0].ToString(), "value=\"", "\" ", false, 0); } int.TryParse(ID, out OutID); if (OutID > 0) { File.WriteAllText(CachePath, OutID.ToString()); } return(OutID); } } } return(0); }