С тех пор, как я кодирую на C#, и я пытаюсь создать пару небольших инструментов для себя и своих друзей, но у меня возникла проблема, которая мешает мне продолжать.C# HtmlAgilityPack Обновить значение
Проблема в этом. Я хочу использовать HmtlAgilityPack, чтобы получить изменяющееся значение, чтобы использовать его для нескольких разных действий. Но проблема в том, что значение зацикливается на одном и том же значении до тех пор, пока я не перезапущу программу.
Так вот код, я использую:
public static void Main(string[] args)
{
Console.WriteLine("Running the program!");
Console.WriteLine("Reading the value!");
int i = 0;
string url = "Website";
while (i < 300)
{
i++;
HtmlWeb web = new HtmlWeb();
HtmlDocument LoadWebsite = web.Load(url);
HtmlNode rateNode = LoadWebsite.DocumentNode.SelectSingleNode("//div[@class='the-value']");
string rate = rateNode.InnerText;
Console.WriteLine(i + ". " + rate);
Thread.Sleep(1000);
}
Console.WriteLine("Done");
Console.ReadLine();
}
Так вот первый загружает веб-сайт. Затем он получает значение из div. После этого он записывает значение, чтобы проверить его. Но он просто пишет одно и то же значение.
Мой вопрос здесь в том, что я не знаю, что мне нужно изменить, чтобы получить новое значение, потому что значение меняется каждые несколько секунд, и мне нужно последнее значение с моего сайта. Это похоже на значение, необходимое для поддержания работы системы.
После 'Thread.Sleep', все ясно, т.е.' веб = null', 'LoadWebsite = null' и проверить следующую итерацию дает ли вам ту же запись или нет. –
Спасибо за предложение, но оно не изменилось или, по крайней мере, оно не изменилось так быстро, как должно. Возможно, есть что-то, что нужно полностью изменить, как сначала загрузить другую сторону, а затем снова загрузить первый или очистить кэш программы или что-то в этом роде, чтобы прокатиться по значению. Btw Значение изменилось, но только как раз в 2 минуты, что является способом замедления – Varmint
Несмотря на то, что вы не заданы вопросом, вы можете использовать 'Timer' вместо спящего основного потока, который вызывает не отвечающий статус в приложении. – mcy