Учебники

Python — Чтение RSS-канала

RSS (Rich Site Summary) — это формат для доставки регулярно меняющегося веб-контента. Многие новостные сайты, блоги и другие онлайн-издатели распространяют свой контент в виде RSS-канала для тех, кто этого хочет. В python мы используем справку из пакета ниже, чтобы прочитать и обработать эти каналы.

pip install feedparser

Структура корма

В приведенном ниже примере мы получаем структуру канала, чтобы мы могли дополнительно проанализировать, какие части канала мы хотим обработать.

import feedparser
NewsFeed = feedparser.parse("https://timesofindia.indiatimes.com/rssfeedstopstories.cms")
entry = NewsFeed.entries[1]

print entry.keys()

Когда мы запускаем вышеуказанную программу, мы получаем следующий вывод:

['summary_detail', 'published_parsed', 'links', 'title', 'summary', 'guidislink', 'title_detail', 'link', 'published', 'id']

Название канала и сообщения

В приведенном ниже примере мы читаем заголовок и заголовок RSS-канала.

import feedparser

NewsFeed = feedparser.parse("https://timesofindia.indiatimes.com/rssfeedstopstories.cms")

print 'Number of RSS posts :', len(NewsFeed.entries)

entry = NewsFeed.entries[1]
print 'Post Title :',entry.title

Когда мы запускаем вышеуказанную программу, мы получаем следующий вывод:

Number of RSS posts : 5
Post Title : Cong-JD(S) in SC over choice of pro tem speaker

Подробности фида

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

import feedparser

NewsFeed = feedparser.parse("https://timesofindia.indiatimes.com/rssfeedstopstories.cms")

entry = NewsFeed.entries[1]

print entry.published
print "******"
print entry.summary
print "------News Link--------"
print entry.link

Когда мы запускаем вышеуказанную программу, мы получаем следующий вывод: