문제

블로그 URL에서 피드 URL (RSS 또는 ATOM)을 얻는 방법 :- http://anirudhagupta.blogspot.com/그래서 C#에 의해 그의 피드를 동적으로 얻을 수있는 방법

Regex 및 C#을 사용하여 블로그의 Feedurl을 얻을 수있는 방법이 있습니다.

도움이 되었습니까?

해결책

RSS 피드는 구체적으로보고 싶은 것에 따라 다를 수 있지만 Blogspot의 경우 일반적으로

Blogname/피드/게시물/기본 IE. http://anirudhagupta.blogspot.com/feeds/posts/default

VS 2008을 사용하는 경우 신디케이트 피드 객체를 사용하여 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

다른 팁

사이트의 루트 페이지를 방문 할 때 (즉). http://myblog.com/ 헤드에서 링크 속성을 찾아야합니다.

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

이제는 해당 링크가 헤드에 보장되지 않지만 사용자가 사이트를 방문 할 때 Firefox 또는 Internet Explorer에 작은 RSS 로고가 표시되기를 원한다면 아마도 해당 라인을 추가했을 것입니다. WordPress는 기본적으로 수행합니다.

참고 : 내 예제는 실제 사이트가 아닌 가상의 예일뿐입니다. 그러나 당신이 아는 몇 가지 블로그의 출처를 살펴보면 이와 같은 링크 태그가 보일 것입니다.

사용 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") 상대 주소를 얻는 방법.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top