Полный текст новости в Google Reader

Вам никогда не хотелось, чтобы в Google Reader отображались не только анонсы новостей с сайтов (вообще то это зависит от вебмастера, что будет включено в RSS — полныее тексты новостей, или анонсы, но будем считать, что в RSS анонсы, потому что чаще всего это именно так). Например, RSS сайта RBC.RU отображает только заголовки новостей, без подробностей.

Выглядит это так:

rbc1

Но есть возможность сделать так, чтобы содержание новости автоматически подкачивалось браузером (это справедливо для Firefox, потому что используется дополнение Greasemonkey).

Тогда новость пример такой вид:

rbc2

Согласитесь — совсем другое дело!

Для того, чтобы это заработало, нужно сделать 3 вещи:

  1. Установить дополнение Greasemonkey для вашей версии Firefox.
  2. Установить скрипт «google reader full feed changer» (на страничке, которая откроется по  данной ссылке, просто нажмите на экранную кнопку «Install» (громадное спасибо автору!!!), или скачайте уже отредактированный мной скрипт в конце статьи)
  3. Отредактировать скрипт. Наверное, это самое сложное в этом процессе.

Чтобы отредактировать скрипт, войдите в меню «Управление скриптами», щелкнув по иконке Greasemonkey (смешная мартышка) в правом нижнем углу браузера. Выделите в открывшемся окне слева «google reader full feed changer» и нажмите внизу экранную кнопку «Изменить».

В текстовом редакторе откроется скрипт.

Он состоит из трех блоков:

  1. // ==UserScript==
    // @name        google reader full feed changer
    // @namespace   http://blog.fkoji.com/
    // @include     http://www.google.*/reader/*
    // @include     https://www.google.*/reader/*
    // @version     0.71
    // ==/UserScript==

    Это заголовок скрипта, оставляем все без изменений

  2. var SITE_INFO = [
    {
    url:    'http://habrahabr.ru',
    xpath:  '//div[@class="hentry"]',
    charset:   'utf-8'
    },
    
    {
    url: 'http://voffka.com/',
    xpath: '//div[@class="blogbody"]',
    charset: 'windows-1251'
    },
    
    {
    url: 'http://www.rbc.ru/',
    xpath: '//div[@class="noUndlBlock"]',
    charset: 'windows-1251'
    },
    
    {
    url: 'http://community.livejournal.com',
    xpath: '//div[@id="content-wrapper"]',
    charset: 'UTF-8'
    },
    
    {
    url: 'http://www.fcenter.ru',
    xpath: '//div[@class="content"]',
    charset: 'windows-1251'
    },
    
    {
    url: 'http://www.inosmi.ru/',
    xpath: '//div[@class="bodydoc"]',
    charset: 'windows-1251'
    }
    /*
    {bodydoc
    url: '',
    xpath: '',
    charset: ''
    }
    */
    ];

    — это именно та часть скрипта, которую нам нужно переделать под себя

  3. Все, что после точки с запятой до конца скрипта — нас не волнует. Это код, который и будет осуществлять необходимые подстановки

Остановимся на втором пункте подробнее.

По умолчанию, вы можете увидеть, что в скрипте множество блоков, написанных через запятую (кроме последнего), следующего вида:

{
url: 'http://www.inosmi.ru/',
xpath: '//div[@class="bodydoc"]',
charset: 'windows-1251'
}

В приведенном примере я уже изменил сайты на более привычные себе (изначально там была пара десятков популярных японских новостных сайтов). В моей редакции вы можете заметить inosmi.ru, habrahabr.ru, vooffka.com и другие.

Как дополняются такие блоки? очень просто. Копируете уже готовый блок:

{
url: 'http://www.inosmi.ru/',
xpath: '//div[@class="bodydoc"]',
charset: 'windows-1251'
}

и добавляете после всех предыдущих, поставив после последнего запятую.
Меняете ‘http://www.inosmi.ru/’ на ‘http://www.moylubimyisait.ru/’ (только домен! не надо вставлять подпапки через слеш, которые могут присутствовать на просматриваемой страничке новости после домена).
charset — смотрите в меню файрфокса — «Вид» -> «Кодировка». Обычно это или ‘windows-1251’ или ‘utf-8’ для российских сайтов.
И, наконец, самое сложное: xpath. Чтобы правильно заполнить этот блок, откройте страничку с новостью, щелкнув по анонсу в google reader-е. Далее — выделите текст новости, как показано на рисунке, и выберите в контекстном меню «Исходный код выделенного фрагмента»:

rbc3

Затем просмотрите код, и найдите тег, который содержит полный текст новости:

rbc4

Я выделил этот тег цветом.  Обычно это DIV, у которого обозначен class или ID (на рисунке class = «noUndlBlock». Значит добавляем строчку такого вида:

xpath: '//div[@class="noUndlBlock"]',

Если бы у нас был определен ID, то строка выглядела бы так:

xpath: '//div[@id="noUndlBlock"]',

Идея ясна? В приведенном выше примере из моей настройки — несколько сайтов, которыми я пользуюсь.

Можете использовать мой файл скрипта, скачав его отсюда.

Добавляйте блоки объявления для других сайтов в комменты. Я их обязательно добавлю в текст новости, с указанием акторства.

Полный текст новости в Google Reader: 9 комментариев

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

CAPTCHA
Reload the CAPTCHA codeSpeak the CAPTCHA code