распознавать обнаруживать RSS-канал с помощью PHP - PullRequest
0 голосов
/ 20 марта 2010

Каков наилучший способ определить, является ли данный URL действительно RSS-фидом?

Ответы [ 2 ]

3 голосов
/ 20 марта 2010

Трудно сделать надежно, если URL-адреса, которые вы должны проверить, являются произвольными.

Одна вещь будет content-type, которую она обслуживает. Однако это может измениться, поскольку (IIRC) IE требуется text/xml для отображения фактического фида, а не для его предложения. Подробнее об этом см. здесь .

Второй (и более надежной) вещью будет анализ структуры файла. Вот некоторые идеи: Как определить, является ли страница каналом RSS или ATOM

Самым простым способом может быть, как рекомендует Паскаль Мартин в этом вопросе, открытие URL с помощью программы чтения Zend RSS. Если это сработает, это действительный ресурс RSS, в противном случае это не так.

0 голосов
/ 14 июля 2012

Если вы разработчик Python, это довольно просто. Я столкнулся с той же ситуацией некоторое время назад. Сначала установите libray "feedparser" в вашей системе как библиотеку python

Например, ваша ссылка на канал - "www.example.org/feed". чк следующий

    import feedparser
    f=feedparser.parse("www.example.org/feed")
    if len(f.version)>0:
        print "It is a feed with version",str(f.version)   #Since the parsing is done and versions are allocated only to actual valid feeds otherwise an empty string is there 
    else:
        print "Not a Valid Feed Url"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...