private List <JArray> getEpisodePlayerInfoAndEnhance(string episodeHref) { List <JArray> rs = new List <JArray>(); logForm.append("getEpisodePlayerInfoAndEnhance: " + episodeHref); string moviePlayerInfo = WebParserUtil.selectSingleNode(episodeHref, ".//div[@class='left-content-player ']").SelectSingleNode(".//script").InnerText.Trim(); var parts = moviePlayerInfo.Split(new string[] { "$(document)" }, StringSplitOptions.None); var playerSettingString = parts[0].Replace("var playerSetting = ", ""); playerSettingString = playerSettingString.Substring(0, playerSettingString.LastIndexOf(";")); JObject json = JObject.Parse(playerSettingString); foreach (var x in json) { if (x.Value.GetType() != typeof(JArray)) { break; } if (((JArray)x.Value).Children().Count() > 0) { rs.Add((JArray)x.Value); } } return(rs); }
public override HtmlNodeCollection getItemsInPage(int pageIndex) { currentDestToGetUrl = currentDestToGetUrl.Substring(0, currentDestToGetUrl.LastIndexOf("/") + 1) + pageIndex; var ul = WebParserUtil.selectNodes(currentDestToGetUrl, "//div[@class='left-content'] //ul"); return(ul[0].SelectNodes(".//a")); }
public override HtmlNodeCollection getItemsInPage(int pageIndex) { string[] currentDestToGetUrlInfo = currentDestToGetUrl.Split('?'); string urlParams = (currentDestToGetUrlInfo.Length > 1) ? "&" + currentDestToGetUrlInfo[1] : ""; string pageUrl = currentDestToGetUrlInfo[0] + pageIndexParam + pageIndex + urlParams; var ul = WebParserUtil.selectNodes(pageUrl, "//div[@class='left-content'] //ul"); return(ul[0].SelectNodes(".//a")); }
private HtmlNodeCollection getListServer(HtmlNode movieWatchPage) { var serverItems = movieWatchPage.SelectNodes(".//div[@class='server-item']"); var temp = WebParserUtil.convertDomStringToHtmlNode("<div></div>"); foreach (var serverItem in serverItems) { temp.AppendChild(serverItem.SelectNodes("./div")[0].SelectSingleNode(".//span")); } return(temp.SelectNodes(".//span")); }
private string getEpisodePlayerInfoByIndexAndRebuildPlayListHtml(int serverIndex, int episodeIndex, string playListHtmlString) { var playListHtml = WebParserUtil.convertDomStringToHtmlNode(playListHtmlString); var episodePlayerInfo = playListHtml.SelectNodes(".//div[@class='server-item']")[serverIndex].SelectNodes(".//div[@class='episode-item']")[episodeIndex]; var moviePlayerInfoLink = episodePlayerInfo.Attributes["moviePlayerInfoLink"].Value; var episodePlayerInfoReplace = "<div moviePlayerInfoLink='" + moviePlayerInfoLink + "' class='episode-item' name='" + episodePlayerInfo.Attributes["name"].Value + "'>"; episodePlayerInfoReplace += "var playerSetting=" + victimServiceInstance.getEpisodePlayerInfo(moviePlayerInfoLink); episodePlayerInfoReplace += "</div>"; episodePlayerInfo.ParentNode.ReplaceChild(WebParserUtil.convertDomStringToHtmlNode(episodePlayerInfoReplace), episodePlayerInfo); return(playListHtml.OuterHtml); }
public override HtmlNodeCollection getItemsInPage(int pageIndex) { string pageUrl = currentDestToGetUrl + pageIndexParam + (++pageIndex) + ".html"; return(WebParserUtil.selectNodes(pageUrl, "//ul[@class='list-movie'] //a")); }
public HtmlNode getRootNode(string url) { return(WebParserUtil.getRootDocument(url).DocumentNode.SelectSingleNode("//body")); }
public string getEpisodePlayerInfo(string episodeHref) { string moviePlayerInfo = WebParserUtil.getContentByUrl(episodeHref); return(moviePlayerInfo); }
private HtmlNodeCollection buildEpisodeNodes(string movieHref) { return(WebParserUtil.convertDomStringToHtmlNode("<div><a href='" + movieHref + "'>1</a></div>").SelectNodes(".//a")); }