Чем ближе дата закрытия Google Reader тем более насущным становится вопрос не только переноса подписок в аналогичный сервис, но и сохранения всех текущих записей.
Найденные решения, в том числе и на хабре(здесь и здесь), не подошли в основном по двум причинам: нет возможности сохранения в БД и медленная скорость работы. Пришлось собрать свой велосипед — grbackup, который
grbackup -e fake@gmail.com -p password -ba -o mongodb://localhost:27017 -w 20
за 20 минут сохранил 328250 записей из 102 подписок в локальную БД MongoDB.
Основные возможности:
- сохранение всех записей, которые можно получить при помощи Google Reader API
- сохранение записей в различные хранилища
- использование формата идентичного тому, что отдает Google Reader через API
- параллельное получение/сохранение записей
- расширяемость: возможность добавить новый вид хранилища
Доступные виды хранилищ определяются расширениями(плагинами) и задаются при помощи опции (-o, --output) вида type:uri.
На момент написания статьи доступны следующие расширения:
- simple: вывод в терминал (используется только в режиме просмотра)
- json: запись в json-файл (json:/path/to/file.json)
- mongodb: запись в MongoDB (mongodb://[username:password@]hostN[:portN]]][/[db][?opts]])
- redis: запись в Redis (redis://username:password@host[:port]/dbindex)
Работоспособность проверена на Ubuntu(64) и Win7(64).
Книгу предложений и замечаний можно найти здесь.
Ниже находится подробное описание утилиты.
Читать полностью »