работа с RSS

Тема в разделе "PHP", создана пользователем phillip, 21 сен 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. phillip

    phillip

    Регистр.:
    4 сен 2007
    Сообщения:
    413
    Симпатии:
    15
    подскажите как работать с RSS. ну как парсить я примерно нашел. а как сделать чтобы при обновлении рсс- постились новые посты на мой ресурс- это как делается?
     
  2. DCRM

    DCRM Постоялец

    Регистр.:
    28 июн 2007
    Сообщения:
    53
    Симпатии:
    40
    Хм... например кроном сделай автозапуск парсилки каждый час :ay:
     
  3. myweb

    myweb Среда обитания WEB

    Регистр.:
    10 сен 2007
    Сообщения:
    539
    Симпатии:
    246
    Перед вставкой постов проверяй их существование в базе например по полю title и если нет вставляешь.
     
  4. gregzem

    gregzem

    Регистр.:
    21 окт 2007
    Сообщения:
    200
    Симпатии:
    63
    По полю title нельзя их проверять. В RSS для этого специально есть поле GUID.

    А вообще вопрос из серии "как сделать сайт". Уж очень всеобъемлющий. Думаю, вам надо пойти в гугл и поискать вопрос "как написать rss агрегатор".

    Если кратко -
    1. берем HTTP клиента (fopen, curl, file_get_contents,...)
    2. берем адрес rss feed (один или несколько)
    3. берем кэш уже загруженного rss контента (БД, файлы)
    4. проверяем условие актуальности загруженных rss сообщений (например, загрузка раз в час). Если данные ещ актуальны - выводим локальную копию, если нет - тянем новые данные HTTP клиентом по указанному урл.
    5. парсим полученный XML
    6. сохраняем в кэше


    Возможны варианты, детали и пр. Но в целом так они все и работают. Посмотрите в сторону библиотеки Snoopy.class, кстати.
     
  5. drkwv

    drkwv Создатель

    Регистр.:
    2 окт 2007
    Сообщения:
    10
    Симпатии:
    1
    Когда не указан GUID, можно делать MD5 хеш description'a рсс итема.
     
Статус темы:
Закрыта.