Полный текст новости в Google Reader
Вам никогда не хотелось, чтобы в Google Reader отображались не только анонсы новостей с сайтов (вообще то это зависит от вебмастера, что будет включено в RSS — полныее тексты новостей, или анонсы, но будем считать, что в RSS анонсы, потому что чаще всего это именно так). Например, RSS сайта RBC.RU отображает только заголовки новостей, без подробностей.
Выглядит это так:
Но есть возможность сделать так, чтобы содержание новости автоматически подкачивалось браузером (это справедливо для Firefox, потому что используется дополнение Greasemonkey).
Тогда новость пример такой вид:
Согласитесь — совсем другое дело!
Для того, чтобы это заработало, нужно сделать 3 вещи:
- Установить дополнение Greasemonkey для вашей версии Firefox.
- Установить скрипт «google reader full feed changer» (на страничке, которая откроется по данной ссылке, просто нажмите на экранную кнопку «Install» (громадное спасибо автору!!!), или скачайте уже отредактированный мной скрипт в конце статьи)
- Отредактировать скрипт. Наверное, это самое сложное в этом процессе.
Чтобы отредактировать скрипт, войдите в меню «Управление скриптами», щелкнув по иконке Greasemonkey (смешная мартышка) в правом нижнем углу браузера. Выделите в открывшемся окне слева «google reader full feed changer» и нажмите внизу экранную кнопку «Изменить».
В текстовом редакторе откроется скрипт.
Он состоит из трех блоков:
-
// ==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==
Это заголовок скрипта, оставляем все без изменений -
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: '' } */ ];— это именно та часть скрипта, которую нам нужно переделать под себя - Все, что после точки с запятой до конца скрипта — нас не волнует. Это код, который и будет осуществлять необходимые подстановки
Остановимся на втором пункте подробнее.
По умолчанию, вы можете увидеть, что в скрипте множество блоков, написанных через запятую (кроме последнего), следующего вида:{
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-е. Далее — выделите текст новости, как показано на рисунке, и выберите в контекстном меню «Исходный код выделенного фрагмента»:
Затем просмотрите код, и найдите тег, который содержит полный текст новости:
Я выделил этот тег цветом. Обычно это DIV, у которого обозначен class или ID (на рисунке class = «noUndlBlock». Значит добавляем строчку такого вида:
xpath: '//div[@class="noUndlBlock"]',
Если бы у нас был определен ID, то строка выглядела бы так:
xpath: '//div[@id="noUndlBlock"]',
Идея ясна? В приведенном выше примере из моей настройки — несколько сайтов, которыми я пользуюсь.
Можете использовать мой файл скрипта, скачав его отсюда.
Добавляйте блоки объявления для других сайтов в комменты. Я их обязательно добавлю в текст новости, с указанием акторства.









{
url: 'http://www.regnum.ru/',
xpath: '//div[@class="newsbody"]',
charset: 'windows-1251'
},
Ответить
{
url: 'http://www.yaplakal.com',
xpath: '//table[@class="tableborder"]',
charset: 'windows-1251'
},
Ответить
{
url: 'http://www.utro.ru',
xpath: '//div[@class="article-txt"]',
charset: 'windows-1251'
},
Ответить
{
url: 'http://www.phoronix.com',
xpath: '//div[@id="phxcms_content_phx"]',
charset: 'utf-8'
},
Ответить
{
url: 'http://www.opennet.ru',
xpath: '//td[@class="chtext"]',
charset: 'KOI8-R'
},
Ответить
{
url: 'http://www.rusilicon.net',
xpath: '//div[@class="post"]',
charset: 'utf-8'
},
Ответить
Еще:
Ответить
Если есть различия, то хочется узнать. Потому что расширение тоже на Greasemonkey основано, как я понял.
Ответить
Есть еще расширение Better GReader. По-моему выполняет ту же роль.
Ответить