Вы могли бы, например, разобрать строки вроде этого:
using System.Net;
using HtmlAgilityPack;
namespace ConsoleApplication5
{
class Program
{
static void Main(string[] args)
{
WebClient webClient = new WebClient();
string page = webClient.DownloadString("http://www.deu.edu.tr/DEUWeb/Guncel/v2_index_cron.html");
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(page);
HtmlNode table = doc.DocumentNode.SelectSingleNode("//table");
foreach (var cell in table.SelectNodes("tr/td"))
{
string someVariable = cell.InnerText;
}
}
}
}
Для полноты использования LINQ вы можете легко создать перечислимое значение, которое содержит все значения непустых строк:
private static void Main(string[] args)
{
WebClient webClient = new WebClient();
string page = webClient.DownloadString("http://www.deu.edu.tr/DEUWeb/Guncel/v2_index_cron.html");
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(page);
HtmlNode table = doc.DocumentNode.SelectSingleNode("//table");
var rows = table.SelectNodes("tr/td").Select(cell => cell.InnerText).Where(someVariable => !String.IsNullOrWhiteSpace(someVariable)).ToList();
}
спасибо, что это сработало много. – OykunYenal
Есть ли способ исправить турецкий характер, могу ли я дать атрибут UTF-8 в любом месте? – OykunYenal
'// tr/td' рекурсивно перезапускается в корне дерева. Вероятно, вы хотите сделать '.// tr/td' или' tr/td', если знаете, что 'tr' находится непосредственно под' table' –