Создал rss для Газеты Спорт-экспресс именно для газетных полос, а не для новостей, как у них на сайте. В devtools все обновляется нормально, не выдает никаких ошибок. Но при обновлении канала на сайте возникает ошибка в UpLog:
"An error occurred while updating the entries. See the InnerException for details."
Что может быть и как можно исправить?
Шаблон:
<?xml version="1.0" encoding="utf-8"?><Template type="ScriptUpdater"><Url>http://www.sport-express.ru/newspaper/</Url><Title>Газета Спорт-экспресс</Title><Description>Газетный номер в rss</Description><Encoding>windows-1251</Encoding><UserAgent></UserAgent><ChannelTemplate><![CDATA[
try{
var d = new Document('http://www.sport-express.ru/newspaper/', 'windows-1251');
// Массив с заголовками и ссылками на новости
var j=0;
var links=d.getElementsByXPath('/html/body/div[7]/div[1]/table[1]/tr[1]/td[1]/div[1]/div[1]/div[3]');
var elem=links[0].getElementsByTagName('a');
//priуnt(elem.length);
for (var j=0; j<elem.length; j++){
var cUrl = links[0].getElementsByTagName('a')[j].getAttribute('href');
var cTitle = links[0].getElementsByTagName('a')[j].innerText;
var cDate = DateTime.Now;
var a = new Article();
a.id = a.url = 'http://sport-express.ru' + cUrl;
a.header = cTitle;
a.date = DateTime.Parse(cDate);
// Помещаем новую статью в канал
// Текст новости получим чуть позже
channel.articles.push(a);
}
}catch(ex){
errorMessages.Add(ex);
}]]></ChannelTemplate><ArticleTemplate><![CDATA[try{
var d = new Document(article.url,channel.encoding);
var el = d.getElementsByAttr("div", "id" , "artbody")[0];
article.body = el.innerHTML;
}catch(ex){errorMessages.Add(ex)}]]></ArticleTemplate><IsRSSBased>False</IsRSSBased></Template>
everdream, Проблема в том, что у article не задан идентификатор (id)
Где-нибудь в конце ArticleTemplate напишите так:
article.id = article.url;
Если это не поможет, напишите.