private static List <Equipe> ExtraiDadosEquipes(IEnumerable <string> urlsEquipes) { var rand = new Random(); var equipes = new List <Equipe>(); foreach (var urlEquipe in urlsEquipes) { Thread.Sleep((int)Math.Ceiling(2500 * rand.NextDouble())); Console.WriteLine(urlEquipe); var documentEquipe = new HtmlWeb().Load(urlEquipe); var secaoCabecalho = documentEquipe.GetElementbyId("main-container").Descendants("section").First(s => s.Attributes.Contains("class") && s.Attributes["class"].Value.Contains("team_subheader")); var nomeTime = secaoCabecalho.Descendants("strong").First(s => s.Attributes.Contains("class") && s.Attributes["class"].Value.Contains("title")).InnerText; Console.WriteLine(nomeTime); var equipe = new Equipe { Url = urlEquipe, Nome = nomeTime, Jogadores = new List <Jogador>() }; equipes.Add(equipe); var div6 = documentEquipe.GetElementbyId("6"); var aJogadores = div6.Descendants("a"); foreach (var aJogador in aJogadores) { var strongs = aJogador.Descendants("strong"); var linhaInfo = aJogador.Descendants("table").Single().Descendants("tbody").Single().Descendants("tr").Single(); var celulasInfo = linhaInfo.Descendants("td").ToList(); equipe.Jogadores.Add(new Jogador { Nome = strongs.First(s => s.Attributes["class"].Value.Contains("name")).InnerText, Numero = strongs.First(s => s.Attributes["class"].Value.Contains("number")).InnerText, Posicao = celulasInfo[0].InnerText, Altura = celulasInfo[1].InnerText, Idade = celulasInfo[2].InnerText, Url = aJogador.Attributes["href"].Value }); } } return(equipes); }
/// <summary> /// Scrapes the page at the given URL to get just the URL to the camera image. /// </summary> /// <param name="pageUrl">Page URL to scrape</param> /// <returns>The direct URL to the camera image.</returns> string GetCameraImageUrlFrom(String pageUrl) { var cameraPageDoc = new HtmlWeb().Load(pageUrl); var cameraElem = cameraPageDoc.GetElementbyId("ILPTrafficCamera"); return(cameraElem.GetAttributeValue("src", null)); }
static void GetDependenciesRecursive(ulong id, List <Steamworks.Ugc.Item> dependencies, bool noisy = false) { var workshopItemWeb = new HtmlWeb().Load($"https://steamcommunity.com/sharedfiles/filedetails/?id={id}"); var dependencyDiv = workshopItemWeb.GetElementbyId("RequiredItems"); if (dependencyDiv == null) { return; } foreach (var childDiv in dependencyDiv.ChildNodes.Where(x => x.Name == "a")) { string dependencyUrl = childDiv.GetAttributeValue("href", ""); var match = Regex.Match(dependencyUrl, STEAM_WORKSHOP_URL_PATTERN); ulong dependencyId = ulong.Parse(match.Groups[1].Value); var dependencyItem = SteamUGC.QueryFileAsync(dependencyId).GetAwaiter().GetResult().Value; if (dependencies.Count(x => x.Id == dependencyItem.Id) > 0) { continue; } if (noisy) { PrintItemStatus(dependencyItem); } dependencies.Add(dependencyItem); GetDependenciesRecursive(dependencyItem.Id, dependencies, noisy); } }
override protected IEnumerable <ServerInfo> FetchServers() { HtmlDocument webpageDocument = new HtmlWeb().Load("http://www.ishadowsocks.com/"); HtmlNode serverText = webpageDocument.GetElementbyId("free"); return(ServerInfoParser.ReadFromTextMulti(serverText.InnerText, parser)); }
public async Task AmdCmdAsync() { var doc = new HtmlWeb().Load("https://finance.yahoo.com/quote/AMD"); var header = doc.GetElementbyId("quote-header-info"); var info = header.LastChild.FirstChild.FirstChild.ChildNodes.Select(n => n.InnerText).ToList(); await ReplyAsync($"{(info[0] + "$").Bold()}\n{info[1]}\n{info[2]}").ConfigureAwait(false); }
public SeattleCameraDataService() { var mapPageUrl = "http://www.wsdot.com/traffic/seattle/default.aspx"; var mapPageDoc = new HtmlWeb().Load(mapPageUrl); var mapElem = mapPageDoc.GetElementbyId("SeattleNav"); foreach (var areaNode in mapElem.Elements("area")) { var title = areaNode.GetAttributeValue("title", null); var href = areaNode.GetAttributeValue("href", null); if (title != null && href != null && href.EndsWith("#cam", StringComparison.Ordinal)) { cameraPages[title] = href; } } SetCameraNames(cameraPages.Keys.ToList()); }
private static List <string> GetGoogleResults(Question question) { string searchDataForGoogle = string.Join("+", question.Text.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries)); string searchUrl = "http://www.google.com/search?q=" + searchDataForGoogle; Process chromeProcess = Process.Start(searchUrl); HtmlDocument htmlDocument = new HtmlWeb().Load(searchUrl); List <string> resultWordList = new List <string>(); var searchDiv = htmlDocument.GetElementbyId("search"); if (searchDiv != null && searchDiv.FirstChild != null && searchDiv.FirstChild.FirstChild != null && searchDiv.FirstChild.FirstChild.ChildNodes != null) { var list = searchDiv.FirstChild.FirstChild.ChildNodes; foreach (HtmlNode item in list) { var headerNode = item.ChildNodes.FirstOrDefault(x => x.Name == "h3"); if (headerNode != null) { var headerText = headerNode.InnerText.CleanString().ToLower(); var words = headerText.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries); resultWordList.AddRange(words); } var bodyNode = item.ChildNodes.FirstOrDefault(x => x.Name == "div"); if (bodyNode != null) { var bodyTextNode = bodyNode.ChildNodes.FirstOrDefault(x => x.Name == "span"); if (bodyTextNode != null) { var bodyText = bodyTextNode.InnerText.CleanString().ToLower(); var words = bodyText.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries); resultWordList.AddRange(words); } } } } return(resultWordList); }
// 1. Latin - Don't translate // 2. Katakana - Translate to output language // 3. Hiragana / Kanji - Translate to phonetic public string Translate(string url, List <string> maps = null, List <string> particles = null, string languagePair = GoogleRomajiApi.LANGUAGE_PAIR) { var translation = ""; switch (Type) { case TokenType.HiraganaKanji: { // Get phoentic text var doc = new HtmlWeb().Load(url); var phoneticText = WebUtility.HtmlDecode(doc.GetElementbyId("src-translit").InnerText); translation = formatTranslation(phoneticText, maps, particles); break; } case TokenType.Katakana: { // Get translated text var doc = new HtmlWeb().Load(url); var translatedText = WebUtility.HtmlDecode(doc.GetElementbyId("result_box").InnerText); translation = formatTranslation(translatedText, maps, particles); break; } case TokenType.Latin: default: { translation = formatTranslation(Text, maps, particles); break; } } return(translation); }
public static string GetPhoneticReading(string text) { HtmlDocument doc = new HtmlWeb().Load(string.Format(URL, text)); return(WebUtility.HtmlDecode(doc.GetElementbyId("src-translit").InnerText)); }
public static string GetTranslation(string text) { HtmlDocument doc = new HtmlWeb().Load(string.Format(URL, text)); return(WebUtility.HtmlDecode(doc.GetElementbyId("result_box").InnerText)); }