同时从3个链接解析htmlagilitypack
Parsing from 3 links at the same time htmlagilitypack
我解析了2014、2013、2015年的游戏命令历史。
它们具有相同的结构。但是链接不同。
var fourthDoc = htmlWeb.Load("http://soccer.net/2014-2015/results/");
var fifthDoc = htmlWeb.Load("http://soccer.net/2013-2014/results/");
var sixthDoc = htmlWeb.Load("http://soccer.net/2015-2016/results/");
这是我解析数据的方式:
var Games =
fourthDoc.DocumentNode.SelectNodes("@class = 'abc'").Select(a => new Game()
{
Date = a.SelectNodes("./a/div/div[1]/span").Single().InnerText.Trim(),
//....
});
型号:
public class Game
{
public int Id {get;set;}
public DateTime Date { get; set; }
public string FirstTeam { get; set; }
public string SecondTeam { get; set; }
}
如何将三个链接合并为一个路径?
例如
var fourthDoc = htmlWeb.Load("http://soccer.net/2014-2015/results/"+"http://soccer.net/2013-2014/results/"+"http://soccer.net/2015-2016/results/");
我不确定,但我认为你想给出一个字符串数组(urls)并解析所有来自网站的数据.
你应该尝试类似的东西;
List<string> urls = new List<string>
{
"http://soccer.net/2014-2015/results/",
"http://soccer.net/2013-2014/results/",
"http://soccer.net/2015-2016/results/"
};
List<Games> games = new List<Games>();
foreach (string url in urls)
{
var currentData = htmlWeb.Load("url");
var currentListOfGames =
currentData.DocumentNode.SelectNodes("@class = 'abc'").Select(a => new Game()
{
Date = a.SelectNodes("./a/div/div[1]/span").Single().InnerText.Trim(),
//....
});
games.AddRange(currentListOfGames);
}
因为 htmlagilitypack 的 htmlweb.Load 方法每个请求只接受一个 url。
我解析了2014、2013、2015年的游戏命令历史。 它们具有相同的结构。但是链接不同。
var fourthDoc = htmlWeb.Load("http://soccer.net/2014-2015/results/");
var fifthDoc = htmlWeb.Load("http://soccer.net/2013-2014/results/");
var sixthDoc = htmlWeb.Load("http://soccer.net/2015-2016/results/");
这是我解析数据的方式:
var Games =
fourthDoc.DocumentNode.SelectNodes("@class = 'abc'").Select(a => new Game()
{
Date = a.SelectNodes("./a/div/div[1]/span").Single().InnerText.Trim(),
//....
});
型号:
public class Game
{
public int Id {get;set;}
public DateTime Date { get; set; }
public string FirstTeam { get; set; }
public string SecondTeam { get; set; }
}
如何将三个链接合并为一个路径? 例如
var fourthDoc = htmlWeb.Load("http://soccer.net/2014-2015/results/"+"http://soccer.net/2013-2014/results/"+"http://soccer.net/2015-2016/results/");
我不确定,但我认为你想给出一个字符串数组(urls)并解析所有来自网站的数据.
你应该尝试类似的东西;
List<string> urls = new List<string>
{
"http://soccer.net/2014-2015/results/",
"http://soccer.net/2013-2014/results/",
"http://soccer.net/2015-2016/results/"
};
List<Games> games = new List<Games>();
foreach (string url in urls)
{
var currentData = htmlWeb.Load("url");
var currentListOfGames =
currentData.DocumentNode.SelectNodes("@class = 'abc'").Select(a => new Game()
{
Date = a.SelectNodes("./a/div/div[1]/span").Single().InnerText.Trim(),
//....
});
games.AddRange(currentListOfGames);
}
因为 htmlagilitypack 的 htmlweb.Load 方法每个请求只接受一个 url。