Как найти RSS-канал на определенном веб-сайте?

Как найти RSS-канал на определенном веб-сайте? Есть ли какой-нибудь конкретный способ его найти?

Ответ 1

Возможно, вы сможете найти его, посмотрев на источник домашней страницы (или блога). Найдите строку, которая выглядит так:

<link rel="alternate" type="application/rss+xml" title="RSS Feed" href="http://example.org/rss" />

Значение href будет находиться там, где находится RSS.

Ответ 2

Существует несколько способов получить канал RSS на веб-сайте.

Что вы можете сделать, так это получить исходный код веб-сайта и найти этот тег ссылки type="application/rss+xml"

Это будет содержать RSS-канал этого веб-сайта, если таковой имеется.

Вот простая программа на питоне, которая будет печатать RSS-канал любого веб-сайта, если таковой имеется.

import requests  
from bs4 import BeautifulSoup  

def get_rss_feed(website_url):
    if website_url is None:
        print("URL should not be null")
    else:
        source_code = requests.get(website_url)
        plain_text = source_code.text
        soup = BeautifulSoup(plain_text)
        for link in soup.find_all("link", {"type" : "application/rss+xml"}):
            href = link.get('href')
            print("RSS feed for " + website_url + "is -->" + str(href))

get_rss_feed("http://www.extremetech.com/")

Сохраните этот файл с расширением .py и запустите его. Он предоставит вам URL-адрес rss-канала этого веб-сайта.

Google также предоставляет API-интерфейсы для поиска RSS-каналов веб-сайта. Пожалуйста, найдите их здесь: API Google Feed

Ответ 3

Вам нужно просмотреть все URL-адреса на своем веб-сайте, а затем найти файл, содержащий "rss".

Метод выше, возможно, не будет работать в некоторых случаях, если URL-адрес в теге href выглядит примерно как feed.xml, поэтому в этом случае вам нужно будет пропустить все теги, содержащие href И rss, а затем просто проанализировать URL-адрес из атрибута href.

Если вы хотите сделать это через браузер, нажмите CTRL + U, чтобы просмотреть источник, затем CTRL + F, чтобы открыть окно поиска, а затем просто введите rss. URL-адрес RSS-канала должен появиться немедленно.

Ответ 4

Мне нужно было найти сайты с RSS-каналами. Используя Visual Studio (VB), я смог это сделать. Следующий код - всего лишь фрагмент. Он умирает после завершения цикла, но находит ссылку на страницу rss на сайте. Это все, что мне нужно, поэтому я так и не закончил. Но это сработало для меня.

Импортирует System.Net Импортирует System.IO

...       Dim request As WebRequest       request = WebRequest.Create( "http://www.[site]" )

    Dim response As WebResponse = request.GetResponse()
    Dim responseStream As Stream = response.GetResponseStream()
    Dim reader As New StreamReader(responseStream)

    Dim line As String = reader.ReadLine()
    Dim intPos As Integer

    Do
        line = reader.ReadLine()
        intPos = line.IndexOf("/rss")
        If intPos > 0 Then
            MessageBox.Show(line + " " + intPos.ToString)
        End If
    Loop While Not line Is Nothing

....