C# Console.WriteLine(团队1+“-”+团队2%); } } }
注意:将CSQuery作为Nuget软件包安装我忘了提到,如果有某种api,那可能是获取数据的最好、最简单的方法。。特别是如果网站经常更改html/布局..Thanx对于回复,我没有足够的代表投票支持你的答案,但这是我将在一周内调查的事情,当我有空闲时间时,我确实寻找了一个api,但我似乎没有找到该网站的api。我忘了提到如果有某种api,这可能是获取数据的最好、最简单的方法。。特别是如果网站经常更改html/布局..Thanx对于回复,我没有足够的代表投票支持你的答案,但这是我将在一周内调查的事情,当我有空闲时间时,我确实查找了一个api,但我似乎没有找到该网站的api。哇,谢谢你的详细答案,当我有机会继续这项工作时,我会测试一下。谢谢你,如果这是我努力的方向,我会把它作为答案。此外,我从来没有做过网页抓取,所以这将是第一次不用担心。我相信这就是你努力的方向。这只是关于网页刮板的选择。CSQuery和Html Agility Pack对于您要实现的目标来说是非常好的web搜索工具。试着去摆弄他们两个(甚至其他人)来更好地理解你的偏好。哇,谢谢你的详细回答,当我有机会继续做这件事时,我会测试一下。谢谢你,如果这是我努力的方向,我会把它作为答案。此外,我从来没有做过网页抓取,所以这将是第一次不用担心。我相信这就是你努力的方向。这只是关于网页刮板的选择。CSQuery和Html Agility Pack对于您要实现的目标来说是非常好的web搜索工具。试着去摆弄他们两个(甚至其他人),去感受他们,以便更好地理解你的偏好。C# Console.WriteLine(团队1+“-”+团队2%); } } },c#,web,C#,Web,注意:将CSQuery作为Nuget软件包安装我忘了提到,如果有某种api,那可能是获取数据的最好、最简单的方法。。特别是如果网站经常更改html/布局..Thanx对于回复,我没有足够的代表投票支持你的答案,但这是我将在一周内调查的事情,当我有空闲时间时,我确实寻找了一个api,但我似乎没有找到该网站的api。我忘了提到如果有某种api,这可能是获取数据的最好、最简单的方法。。特别是如果网站经常更改html/布局..Thanx对于回复,我没有足够的代表投票支持你的答案,但这是我将在一周内调查的
using System;
using System.Text.RegularExpressions;
using CsQuery;
public static class Scraper
{
public static string RemoveHTMLTags(string html)
{
return Regex.Replace(html, "<.*?>", string.Empty);
}
public static bool FindWinner(string item)
{
if(item.Contains("(win)"))
{
return true;
}
return false;
}
}
public class Program
{
public static void Main()
{
CQ dom = CQ.CreateFromUrl("http://csgolounge.com/match?m=4961");
CQ bold = dom["div > a b"];
CQ italic = dom["div > a i"];
string team1 = Scraper.RemoveHTMLTags(bold[0].Render());
string team2 = Scraper.RemoveHTMLTags(bold[1].Render());
string team1Percent = Scraper.RemoveHTMLTags(italic[0].Render());
string team2Percent = Scraper.RemoveHTMLTags(italic[1].Render());
if(Scraper.FindWinner(team1))
{
Console.WriteLine("-- Winner --");
Console.WriteLine(team1 + " - " + team1Percent);
Console.WriteLine("-- Loser --");
Console.WriteLine(team2 + " - " + team2Percent);
}
else
{
Console.WriteLine("-- Winner --");
Console.WriteLine(team2 + " - " + team1Percent);
Console.WriteLine("-- Loser --");
Console.WriteLine(team1 + " - " + team2Percent);
}
}
}