andy_shev: (contemplative)
К вопросу о быстротечности жизни, я вчера под прямой эфир Радио-Т решил сделать скрипт, который брал бы по имени пользователя Youtube все запощенные им ролики и строил график количества просмотра ролика в зависимости от даты его публикации. Как и показывает практика, у тех, кто постит исключительно свои творения в своём стиле, популярность со временем падает (может даже кто-то увидит экспоненту там или ещё какую функцию, обобщающую стиль падения).

А теперь графики )
andy_shev: (Default)
Добавил фильтрацию в скрипт gopmlgen, которым я синхронизирую подписки в Google Reader'е.

Добавлена опция --exclude <FILE> или --exclude "STRING", которая принимает список URI для исключения из обработки.

Таким образом можно держать человека во френдах в соответствующей соц. сети, но при этом не аггрегировать его поток в Google Reader.

Исходники проекта: http://github.com/andy-shev/gopmlgen

P.S. Предыдущие записи по теме:
http://andy-shev.livejournal.com/113313.html
http://andy-shev.livejournal.com/81393.html
http://andy-shev.livejournal.com/67256.html
andy_shev: (proud)
Наконец дошли руки обновить подписки в Google Reader.
В связи с этим допилил частично свой скрипт, о предыдущей версии которого я уже писал ранее.

Теперь скрипт умеет две основные вещи, обновление подписок и сравнение подписок между GR и другим сервисом (таковых сейчас три: YouTube, LiveJournal, PicasaWeb).

Соответственно опция --subfolder носит не только полезную, но и смысловую нагрузку. Иначе в разнице будут присутствовать совсем не те подписки, которые хотелось бы обновить.

Примеры запуска:
$ gopmlgen --service youtube --subfolder 'YouTube' --diff
Removed(1):
        http://gdata.youtube.com/feeds/base/users/0andriy/subscriptions - Videos published by : 0andriy

$ gopmlgen --service youtube --subfolder 'YouTube' --diff --self --update all
Removed(1):
        http://gdata.youtube.com/feeds/base/users/0andriy/subscriptions - Videos published by : 0andriy

Added(1):
        http://gdata.youtube.com/feeds/base/users/0andriy/uploads - Videos published by : 0andriy


Есть однако и ложка дёгтя, заключающаяся в ошибке #391, не позволяющей отправлять запросы со своим Content-Type. Лечится патчем на gdata-python-client.
andy_shev: (Default)
Продолжение истории про то, как втянуть в Google Reader потоки от используемых сервисов.
Ранее я рассмотрел перенос френдленты ЖЖ, теперь очередь за подписками Picasa и Youtube.

В отличие от LJ сам Google не отдаёт ни OPML, ни хотя бы URL потока на новые записи в Youtube (по крайней мере я не нашёл как это сделать).

Придётся генерировать их скриптом (также им стоит прогнать и LJ подписку).

Как это выглядит.

- устанавливаем Python2.x (x, наверное, >=4), python-gdata, cElementTree
- скачиваем скрипт отсюда и кладём куда-нибудь в ~/bin
- заполняем файл ~/.netrc примерно так:
machine picasaweb.google.com login LOGIN password PASSWORD
machine www.youtube.com login LOGIN password PASSWORD
machine www.livejournal.com login LOGIN password PASSWORD

- запускаем скрипт
$ gopmlgen --service livejournal --sort --output lj.opml --subfolder 'My LJ'
$ gopmlgen --service picasaweb --sort --output picasaweb.opml --self --subfolder "PicasaWeb"
...

- полученные файлы загоняем в Google Reader:
* открыть Google Reader -> Manage Subscriptions
* выбрать фильтр "My LJ" (это же имя фолдера)
* выбрать все потоки, прошедшие фильтр, и отписаться от них
* перейти во вкладку Import/Export
* загрузить сгенерированный OPML (lj.opml)

P.S. Пожелания, патчи и пр. welcome!
andy_shev: (Default)
Чё-то я забыл, есть ли возможность в iconv декодировать замаскированные юникодные символы *ML в нормальные (те, которые &#XXXX;). "Мировой разум" сходу не дал ответ на вопрос.

Отделался по-быстрому скриптом на python'е:
import re
digre=re.compile('&#(\d\d\d\d);', re.U)
x=open("coolfilename").read()
sp=re.subn(digre, lambda y: unichr(int(y.group(1))).encode('utf-8'), x)[0]
open("cooloutput","w").write(sp)


links -dump file.html конечно конвертирует, только вот форматирование полностью портит.

P.S. Пора возвращать документацию в систему :)
andy_shev: (Default)
Предоставляю вашему вниманию простой скрипт, который декодирует пароль аськи, если вы заснифили пакетик логина.

script )
P.S. Писалось очень давно, так что некошерно написано, но работает.

Почему ICQ это плохо.

echo.cgi

Jan. 19th, 2009 10:28 pm
andy_shev: (Default)
Понадобилось тут простой скрипт, который форму заполняет, потестировать... Вот, нашёл сходу: http://enablednation.com/echo.cgi, но судя по данным при запросе POST менее скольки-то сотен байт содержимое передаваемого не выводится.
Впрочем, можно пользоваться.
Ах, да, сам скрипт, если интересно... )
andy_shev: (serious)
Некоторое время назад возникла задача, связанная с dbus и hal. На сегодняшний момент результат в виде: http://pypi.python.org/pypi/minihallib

Прошу использовать и высказвать ваши замечания и пожелания.
andy_shev: (Default)
Не могу не поделиться эмоциями по поводу DBus & hal. Это просто чудный механизм.
Позавчера в районе 23:50 я таки запустил обработку сообщений hal через DBus в python'овском скрипте аж в двух вариантах: polling & event handler.

Понравилось.

Profile

andy_shev: (Default)
Andy Shevchenko

June 2014

S M T W T F S
123 4567
891011121314
15161718192021
22232425262728
2930     

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 22nd, 2017 08:44 pm
Powered by Dreamwidth Studios