Home

Advertisement

неСерый Журнал [entries|archive|friends|userinfo]
Sergey Panfilov

[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Интересные факты о Xmarks [Oct. 10th, 2009|11:43 am]
[Tags|, , ]

Xmarks - это плагин для FireFox, который позволяет созранять закладки на сервере my.xmarks.com и синхронизировать закладки между браузерами FireFox на разных компьютерах.

Факты о компании на 7 октября 2009 года

  • Основана в 2006
  • 14 сотрудников
  • 3.8 миллионов активных плагинов для браузеров (подключавшихся хотя раз за последние 28 дней)
  • 160 миллионов поисковых страниц улучшено Xmarks за месяц
  • 856 миллионов закладок хранятся в Xmarks

Детали облачной инфраструктуры Xmarks

  • число работающих серверов 60
  • чисо ядер 320
  • доступная оперативная память 600 Гб
  • доступное дисковое пространство 40 Тб
  • пиковая сетевая нагрузка 50 Мбит/с
  • пиковое число транзакций плагина для браузера: 750 в секунду
  • число транзакций плагина для браузера за день: 50 миллионов

Используемое ПО

  • Linux (Ubuntu+Debian)
  • Apache
  • Python
  • Pylons (и немного Django)
  • Genshi
  • MySQL
  • BerkeleyDB
  • Memcache
link3 comments|post comment

Роботы набежали и убежали [May. 27th, 2009|10:12 am]
[Tags|, , , , ]

Невзаимные френды с отношением их френдов к их же взаимным френдам более 1.5 (всего 29) ) отправились в список забаненых пользователей. Если Вы нашли себя в списке и считаете, что это ошибка, пишите в LJTalk.

Всё вышеописанное случилось с помощью Python, http://www.livejournal.com/bots/ и http://www.livejournal.com/doc/server/ljp.csp.xml-rpc.protocol.html. Friend-Data в plain-text, конечно хорошо, но это плодит социальных краулеров с непонятными целями.
linkpost comment

Python in PHP [Mar. 2nd, 2009|12:13 pm]
[Tags|, ]

http://www.csh.rit.edu/~jon/projects/pip/
linkpost comment

PHP shell [Feb. 9th, 2009|10:24 am]
[Tags|, ]

phpsh is an interactive shell for php that features readline history, tab completion, quick access to documentation. It was developed at Facebook and ironically, is written mostly in python. It is open source and released under a modified BSD license. © http://www.phpsh.org/

Написали бы они что-ли ещё дебаггер аналогичный pdb.
link2 comments|post comment

Почему мне не нравится PHP - 1 [Nov. 10th, 2008|10:54 am]
[Tags|, ]


<?php
$arr=array(1=>1,'1'=>'one');
echo $arr[1];
one
echo $arr['1'];
one
var_dump($arr);
array(1) {
[1]=>
string(3) "one"
}


То же самое на Питоне:

>>> arr = {1:1,'1':'one'};
>>> arr[1]
1
>>> arr['1']
'one'
>>> arr
{'1': 'one', 1: 1}
>>>
link5 comments|post comment

Дорога ТВ - Видео Речного вокзала [Oct. 18th, 2008|11:08 am]
[Tags|, , ]

Вдохновленный сообщением [info]fucking_right я сделал видео дорожного движения у Речного Вокзала длительностью 1:40 100 кадров с интервалом 6 секунд и частотой 1 кадр в секунду:

Использовавшиеся инструменты: сайт Дорога ТВ, OpenCV и Python 2.6.
Инсталлятор OpenCV автоматически определил наличие Python 2.6 и установил swig bindings для него. Highgui модуль из библиотеки предоставляет высокоуровневые примитивы, с помощью которых проще простого создать видео файл из отдельных изображений. Правда, я бы предпочел лучшую интеграцию с Python, подразумевающую использование классов для работы с файлами, а не указание имен файлов в качестве аргументов. При большом количестве операция чтения/записи файлов придется разобраться с ramdisk под Windows XP.
link5 comments|post comment

Other notable frameworks [Oct. 17th, 2008|10:45 pm]
[Tags|, ]

With Zope 2.x having been known as rather un-pythonic, the newer Zope 3.x tries to change that and therefore gets more acceptance from Python programmers. These efforts already showed results, there is a project which connects Zope with WSGI called Repoze...©HOWTO Use Python 2.6 in the web
linkpost comment

tracmerge+python+svn [Oct. 15th, 2008|09:00 pm]
[Tags|, , ]

После объединения разрозненных SVN репозиториев в один, принялись за Trac. На Trac-Hacks хостится скрипт tracmerge.py. Он, конечно, слабодокументирован, но содержит пример использования, который пришлось подкрутить, т.к. стандартный csv модуль не поддерживает кодировок отличных от ascii. Правда дальше я все равно уперся в проблему, которую описал в открытом и закрытом мной тикете http://trac-hacks.org/ticket/3893.

Путь решения проблемы начался с описания причин отсутствия функции setdefaultencoding и закончился в сообществе ru_python.

Да, после мёржа пришлось ещё построить биндинги SVN для python, но здесь уже помогали старшие товарищи.
linkpost comment

traffic-nn [Jun. 20th, 2008|06:59 pm]
[Tags|, , ]

Два замечательных нижегородских автофорума показывают сообщения о пробках в Нижнем Новгороде: http://www.autoforum.nnov.ru/forum/pager и http://www.auto.nn.ru/traffic/, но их страницы слишком громоздки для загрузки в сотовый. Doroga TV, кстати, тоже сообщает.

Я уже собирался портировать скрипт на Python для симбиановского питона на моем E51, но тут Google открыл App Engine для всех желающих. Так что теперь сообщения о нижегородских пробках доступны по адресу http://traffic-nn.appspot.com
link4 comments|post comment

Google Treasure Hunt [May. 18th, 2008|10:10 pm]
[Tags|, ]

Отличный способ занять себя на пару часов. Ссылку на задачу я нашел в официальном блоге Google. Был приятно удивлен представлению целых чисел в Python (не ожидал, что получится вычислять настолько большие числа, например, 760401738905937245009910944207609328).

Позже, минут 15 пытался понять как ребята из Google умудрились зашифровать урл http://treasurehunt.appspot.com/ в aHR0cDovL3RyZWFzdXJlaHVudC5hcHBzcG90LmNvbS8=, но так и не понял. Видимо, надо ещё пару часов :)
link7 comments|post comment

Я здесь 0.1 [Feb. 6th, 2008|07:10 am]
[Tags|, , , , ]

Кружок неумелых открывается. Вчера вечером народилась подобная картинка:

Пока все это напоминает уроки труда в школе или детский конструктор дома. Учусь складывать кубики.
linkpost comment

И что теперь со всем этим делать? [Dec. 18th, 2007|07:23 pm]
[Tags|, ]

В качестве эксперимента и желания интегрировать всевозможные контакт-листы в один список контактов GTalk, написался скрипт экспортирующий список друзей ЖЖ в XML файл, пригодный для импорта плагином Jabber для Miranda IM.
Правда ответ на главный вопрос: как же сделать так, чтобы два моих Jabber профиля GTalk и LJTalk сосуществовали одновременно он-лайн, найти пока не удалось. Кажется, самое простое решение кроется где-то в поисках клиента, позволяющего одновременно зайти на 2 и более разных Jabber серверов.
Зато узнал о механизме challenge/response авторизации на ЖЖ, а также познакомился с XML-RPC на примере того же ЖЖ. Под катом кроется Python скрипт, для запуска которого необходим интерпретатор питона.
jabberLjFriends.py )
P.S. Загадкой также осталось как люди пользуются LJTalk например с Мирандой. Сколько не пробовал, зайти не удавалось.
link4 comments|post comment

Сканер сетевых ресурсов [Oct. 30th, 2007|06:34 pm]
[Tags|, ]

Написал на Python простой сканер сетевых ресурсов, который выводит список доступных в сети файлов в текстовый файл. Сканер работает на Windows платформе, т.к. использует net view для получения списка компьютеров и общих ресурсов на каждом из них. Ещё, как оказалось, dir /b /s намного быстрее выводит список каталогов, чем питоновская os.walk.

Впрочем, скорость работы сканера меня не удовлетворяла, пока я не добавил ему многопоточности. Использовал start_new, allocate_lock, acquire и release из модуля thread. Для каждого из компьютеров запускал поток, который сканировал все разделяемые ресурсы. Количество одновременно запущенных потоков ограничивал с помощью общего для них списка. Для простоты каждый из потоков записывал имена доступных в сети файлов в свой собственный файл.

Возможные пути развития программы в дальнейшем:
  1. совершенствование алгоритма поиска
  2. поиск узких мест и ускорение сканирования методом "напролом"
  3. реализация веб-интерфейса для поиска доступных файлов вроде ffsearch или tss в Мере
link6 comments|post comment

Win 32 GUI automation with Python [Oct. 16th, 2007|04:49 pm]
[Tags|, , ]

http://www.openqa.org/pywinauto/ and other tools are also mentioned on that page
linkpost comment

"The Cyrillic Charset Soup" [Aug. 29th, 2007|04:36 pm]
[Tags|]

Это название статьи о различных кодировках русского алфавита. С помощью неё опытным путём выяснил, что cmd.exe по умолчанию печатает в cp866, а os.listdir() в cp1251.
linkpost comment

navigation
[ viewing | most recent entries ]

Advertisement