Нужно спарсить ссылки на новости, опубликованные за последние сутки. Причём по моему локальному времени, а не по времени сервера. В качестве цели - возьмём Lenta.ru
...
using System.IO;
using System.ServiceModel.Syndication;
using System.Xml;
...
private async void button2_Click(object sender, EventArgs e)
{
string url = "http://lenta.ru/rss";
XmlReader reader = XmlReader.Create(url, new XmlReaderSettings() { Async = true });
SyndicationFeed feed = SyndicationFeed.Load(reader);
reader.Close();
foreach (SyndicationItem item in feed.Items)
{
String subject = item.Title.Text;
String summary = item.Summary.Text;
...
MessageBox.Show(subject);
}
}
Вопросы:
1). Как получить саму ссылку на новости?
В фиде такие строки:
<item>
<guid>
http://lenta.ru/news/2014/07/08/change/</guid><title>Московская полиция предложила штрафовать подающих милостыню</title>
<link>
http://lenta.ru/news/2014/07/08/change/</link>2). На сервер "Ленты" время UTC+4. У меня UTC+3. Нужно перевести моё время в время сервера, и выбрать новости за последние 24 часа. Как сделать перевод?
3). Что-то форма виснет, несмотря на асинхронное создание ридера. В чём дело?