Как получить URL канала RSS или ATOM от blogurl - PullRequest
0 голосов
/ 30 ноября 2009

как я могу получить URL фида (RSS или ATOM) из URL блога например: - http://anirudhagupta.blogspot.com/ Так как я могу получить его канал динамически с помощью c #

Я говорю, что как я могу получить отклик блога, используя Regex и c #

Ответы [ 3 ]

6 голосов
/ 30 ноября 2009

При посещении корневой страницы сайта, т.е. http://myblog.com/ вы должны найти атрибут ссылки в голове, что-то вроде:

<link rel="alternate" type="application/rss+xml" title="MyBlog RSS Feed" href="http://feeds.feedburner.com/MyBlog" />

Теперь ни один сайт не может иметь такую ​​ссылку в голове, но если они хотят, чтобы этот маленький логотип rss отображался в Firefox или Internet Explorer, когда пользователи посещают их сайт, они, вероятно, добавили эту строку. Wordpress делает это по умолчанию.

Примечание. Мои примеры являются вымышленными, а не реальными сайтами. Но просто посмотрите на источник нескольких известных вам блогов, и вы должны увидеть тег ссылки, подобный этому.

2 голосов
/ 30 ноября 2009

Каналы Rss могут варьироваться в зависимости от того, на что вы конкретно хотите посмотреть, но для blogpot это обычно

название_блога / каналы / сообщений / по умолчанию то есть. http://anirudhagupta.blogspot.com/feeds/posts/default

Если вы используете VS 2008, вы можете использовать объект SyndicationFeed для чтения каналов RSS и ATOM. (Я предполагаю, что это то, что вы хотите сделать, когда говорите «получайте его динамически»)

XmlReader reader = XmlReader.Create(feedUriString);
SyndicationFeed feed = SyndicationFeed.Load(reader);
foreach (SyndicationItem item in feed.Items)
{
//your code for rendering each item
}

http://msdn.microsoft.com/en-us/library/system.servicemodel.syndication.aspx http://jimleonardo.blogspot.com/2009/02/jimleocom-is-back-up-some-how-to.html

0 голосов
/ 27 ноября 2012

Используйте WebRequest для чтения данных, и из Headers вы будете знать тип контента, если content-type равен text/xml, вы просто используете XmlReader для чтения, но если content-type text/html, возможно, вам придется больше работать.
Например, адрес http://myblog.com, не http://myblog.com/feed/, который вы хотите. Поэтому вам нужно найти адрес rss из тега ссылки на странице по умолчанию, тег ссылки выглядит следующим образом:
<link rel="alternate" type="application/rss+xml" title="RSS" href="/rss"/ >
Чтобы найти ссылку rss, вы можете использовать Microsoft HTML Object Library, получить тег ссылки, а затем использовать метод obj.getAttribute("href") для получения относительного адреса.

...