public async override Task <ResultMessage> GetPostIDs(string uid) { return(await Task.Run(() => { var bis = new List <BaseItem>(); try { string url = $"https://api.fanbox.cc/post.listCreator?creatorId={uid}&limit=10"; if (string.IsNullOrEmpty(_referer)) { _referer = $"https://{uid}.fanbox.cc"; } string nurl = GetUrls(GetWebCode(url), bis); if (!string.IsNullOrEmpty(nurl)) { GetPostIDs_Next(nurl, bis); } return ResultHelper.NoError(bis); } catch (Exception ex) { GlobalMethord.ErrorLog(ex.Message + Environment.NewLine + ex.StackTrace + Environment.NewLine + "-----------------------------------------------"); if (ex is WebException || ex is System.Net.Sockets.SocketException) { return ex.Message.Contains("401") ? ResultHelper.CookieError() : ResultHelper.WebError(); } return ResultHelper.UnKnownError(); } })); }
public async override Task <ResultMessage> GetPostIDs(string uid) { return(await Task.Run(() => { try { _pidList = new HashSet <string>(); var bis = GetPostIDsFromWebCode(uid); return ResultHelper.NoError(bis); } catch (Exception ex) { GlobalMethord.ErrorLog(ex.Message + Environment.NewLine + ex.StackTrace + Environment.NewLine + "-----------------------------------------------"); if (ex is WebException || ex is System.Net.Sockets.SocketException) { return ex.Message.Contains("40") ? ResultHelper.CookieError() : ResultHelper.WebError(); } else if (ex is InvalidDataException) { return ResultHelper.UnKnownError("Post Error: " + ex.Message); } return ResultHelper.UnKnownError(); } })); }
private async Task <ResultMessage> LoginCheck(string htmlc) { if (!_needLogin) { if (!htmlc.Contains("currentUser")) { _needLogin = true; return(await LoginCheck(await GetWebCode("https://www.patreon.com/login?ru=%2Fhome"))); } else { if (string.IsNullOrEmpty(htmlc)) { return(ResultHelper.WebError()); } Match ma = _emailRegex.Match(htmlc); if (ma.Success) { var s = ma.Groups[1].Value; GlobalData.VM_MA.Cookies = s; GlobalData.VM_MA.IsInitialized = true; return(ResultHelper.NoError(_needLogin)); } return(ResultHelper.CookieError(GlobalLanguage.Msg_ErrorCookiesMail)); } } else { GlobalData.VM_MA.ShowLogin = true; _cwb.FrameLoadEnd += CWebBrowser_LoginCheck; _cwb.FrameLoadStart += Cwb_FrameLoadStart; return(ResultHelper.NoError(_needLogin)); } }
public async override Task <ResultMessage> GetArtistList() { return(await Task.Run(() => { try { var ais = new List <ArtistInfo>(); var tais = GlobalData.VM_MA.ArtistList.ToList(); if (tais.Count == 0) { tais.Add(new ArtistInfo()); } var jfp = JsonConvert.DeserializeObject <JsonData_Fanbox_Plan>(GetWebCode("https://api.fanbox.cc/plan.listSupporting", "https://www.fanbox.cc/creators/supporting")); if (null != jfp.body) { foreach (var pl in jfp.body) { var ai = GetInfo(pl.creatorId, $"https://www.fanbox.cc/@{pl.creatorId}"); if (null != ai) { ai.PayHigh = pl.fee.ToString(); tais.Remove(ai); ais.Add(ai); } } ais.AddRange(tais); return ResultHelper.NoError(ais); } return ResultHelper.IOError(); } catch (Exception ex) { GlobalMethord.ErrorLog(ex.Message + Environment.NewLine + ex.StackTrace + Environment.NewLine + "-----------------------------------------------"); if (ex is WebException || ex is System.Net.Sockets.SocketException) { return ex.Message.Contains("40") ? ResultHelper.CookieError() : ResultHelper.WebError(); } return ResultHelper.UnKnownError(); } })); }
public async override Task <ResultMessage> GetArtistInfo(string url) { return(await Task.Run(() => { try { Match ma = _artUrl.Match(url); if (!ma.Success) { return ResultHelper.PathError(); } string cid = ma.Groups[1].Value; var jfa = JsonConvert.DeserializeObject <JsonData_Fantia_Artist>(GetWebCode($"https://fantia.jp/api/v1/fanclubs/{cid}")); if (null != jfa.fanclub) { var ai = new ArtistInfo() { Id = cid, AName = GlobalMethord.RemoveLastDot(GlobalMethord.ReplacePath(jfa.fanclub.creator_name)), Cid = cid, PostUrl = $"https://fantia.jp/fanclubs/{cid}", PayLow = GlobalData.VM_MA.Artist.PayLow, PayHigh = GlobalData.VM_MA.Artist.PayHigh }; return ResultHelper.NoError(ai); } return ResultHelper.IOError(); } catch (Exception ex) { GlobalMethord.ErrorLog(ex.Message + Environment.NewLine + ex.StackTrace + Environment.NewLine + "-----------------------------------------------"); if (ex is WebException || ex is System.Net.Sockets.SocketException) { return ex.Message.Contains("40") ? ResultHelper.CookieError() : ResultHelper.WebError(); } return ResultHelper.UnKnownError(); } })); }
public async override Task <ResultMessage> GetArtistInfo(string url) { return(await Task.Run(() => { try { Match ma = _artUrl.Match(url); if (!ma.Success) { ma = _artUrl2.Match(url); if (!ma.Success) { return ResultHelper.PathError(); } } _referer = $"https://www.fanbox.cc/@{ma.Groups[1].Value}"; var ai = GetInfo(ma.Groups[1].Value); if (null != ai) { ai.PayLow = GlobalData.VM_MA.Artist.PayLow; ai.PayHigh = GlobalData.VM_MA.Artist.PayHigh; return ResultHelper.NoError(ai); } return ResultHelper.IOError(); } catch (Exception ex) { GlobalMethord.ErrorLog(ex.Message + Environment.NewLine + ex.StackTrace + Environment.NewLine + "-----------------------------------------------"); if (ex is WebException || ex is System.Net.Sockets.SocketException) { return ex.Message.Contains("40") ? ResultHelper.CookieError() : ResultHelper.WebError(); } return ResultHelper.UnKnownError(); } })); }
public async override Task <ResultMessage> GetArtistList() { return(await Task.Run(() => { try { List <ArtistInfo> ais = new List <ArtistInfo>(); //有料 ais.AddRange(GetArtistListFromWebCode("not_")); //無料 ais.AddRange(GetArtistListFromWebCode(string.Empty)); var tais = GlobalData.VM_MA.ArtistList.ToList(); if (tais.Count == 0) { tais.Add(new ArtistInfo()); } tais.ForEach(x => { if (!ais.Contains(x)) { ais.Add(x); } }); return ResultHelper.NoError(ais); } catch (Exception ex) { GlobalMethord.ErrorLog(ex.Message + Environment.NewLine + ex.StackTrace + Environment.NewLine + "-----------------------------------------------"); if (ex is WebException || ex is System.Net.Sockets.SocketException) { return ex.Message.Contains("40") ? ResultHelper.CookieError() : ResultHelper.WebError(); } return ResultHelper.UnKnownError(); } })); }