Видео ролики бесплатно онлайн

Смотреть русский видео

Официальный сайт ejnews 24/7/365

Смотреть видео бесплатно

Похожие на diviusPySide 0.3.0 для Ubuntu Lucid
Deniz 30.06.2013 12:01

Я рекомендую — Linux по rdp через xrdp

Интерактивный скрипт, автоматически компилит и настраивает свежую xrdp. Так-же есть мануал по ручной настройке.
Полностью.
+ 0 -
7
bobry 29.10.2009 05:50

Pythonrlcompleter: дополнение на месте


Все кто хоть чуть-чуть знаком с python, знают как удобно бывает, время от времени, проверить работоспособность чего-нибудь в интерпритаторе. Лично у меня постоянно вылетают из головы названия методов/функций итп, посему частенько приходится писать чтонибудь а ля:
1
2
3
>>> import sys
>>> dir(sys)
<'__displayhook__', '__doc__', '__excepthook__', '__name__', '__package__', '__stderr__', '__stdin__', '__stdout__', '_clear_type_cache', '_current_frames', '_getframe', 'api_version', 'argv', 'builtin_module_names', 'byteorder', 'call_tracing', 'callstats', 'copyright', 'displayhook', 'dont_write_bytecode', 'exc_clear', 'exc_info', 'exc_type', 'excepthook', 'exec_prefix', 'executable', 'exit', 'flags', 'float_info', 'getcheckinterval', 'getdefaultencoding', 'getdlopenflags', 'getfilesystemencoding', 'getprofile', 'getrecursionlimit', 'getrefcount', 'getsizeof', 'gettrace', 'hexversion', 'maxint', 'maxsize', 'maxunicode', 'meta_path', 'modules', 'path', 'path_hooks', 'path_importer_cache', 'platform', 'prefix', 'ps1', 'ps2', 'py3kwarning', 'setcheckinterval', 'setdlopenflags', 'setprofile', 'setrecursionlimit', 'settrace', 'stderr', 'stdin', 'stdout', 'subversion', 'version', 'version_info', 'warnoptions'>


И все еще достаточно терпимо, когда список, возвращаемый dir сравнительно небольшой, как выше, но когда он в два, а то и три, раза больше - найти нужный пункт становится проблемматично. На помощь, в таком случае, приходит модуль rlcompleter. Чтобы проиллюстрировать, как это работает приведу пример из официальной документации:
1
2
3
4
5
6
7
&gt;&gt;&gt; import rlcompleter
&gt;&gt;&gt; import readline
&gt;&gt;&gt; readline.parse_and_bind("tab: complete")
&gt;&gt;&gt; readline. 
readline.__doc__          readline.get_line_buffer(  readline.read_init_file(
readline.__file__         readline.insert_text(      readline.set_completer(
readline.__name__         readline.parse_and_bind(


К слову, упомянутый выше модуль readline помимо дополнения, имеет еще одну полезную функцию - восстановление истории предыдущих сеансов работы с интерпритатором, в виде функций read_history_file и write_history_file.

Чтобы заставить интерпритатор автоматически загружать все эти вкусности делаем следующее:
создаем в домашнем каталоге файл .pystartup (вообще говоря, выбор местоположения и имени этого файла не критичен, так что файл может находиться где угодно и назывться как вам хочется)
добавляем в этот файл строчки:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# -*- coding: utf-8 -*-

# Если Вы планируете использовать переменные окружения или `~`,
# то нужно обернуть строку в os.path.expandvars или os.path.expanduser
#
# Замечание: в случае, если значение перменной - пустая строка, readline
# будет использовать стандартный путь: ~/.history
HISTORY_FILE = 'path/to/history/file'
# Количество элементов истории, которые будут сохраняться, или -1, если
# Вы хотите сохранять все элементы.
HISTORY_FILE_SIZE = 20


import atexit
import rlcompleter
import readline


def validate_file(history_file):
    "Function checks if the filename for the history file is valid."
    import os.path
    return not history_file or os.path.exists(history_file)


def save_history_file():
    "Function saves input history to HISTORY_FILE."
    import readline
    readline.write_history_file(HISTORY_FILE)


# Инициализируем дополнение по 
readline.parse_and_bind("tab: complete")
# Устанавливаем размер файла истории
readline.set_history_length(HISTORY_FILE_SIZE)
# Загружаем историю из файла
if validate_file(HISTORY_FILE):
    readline.read_history_file(HISTORY_FILE)

# Регистрируем функцию для сохранения истории, при выходе из интерпритатора
atexit.register(save_history_file)

# Удаляем импортированные модули
del atexit
del rlcompleter
del readline

устанавливаем в ~/.bashrc (.zshrc, .cshrc w\e) значение переменной PYTHONSTARTUP
1
export PYTHONSTARTUP ~/.pystartup

наслаждаемся готовым результатом :)
ЗЫ: хочется заранее разочаровать пользователей Windows, модуль , используемый в этом решении, имеет только Unix реализацию.
Полностью.
+ 9 -
8
alvelin 16.06.2010 08:47

PythonDjango-buildout - способ быстрого развертывания проекта на Django

Для тех, кто не в курсе: buildout это набор python-скриптов, облегчающий развертывание приложений.
Установка, естественно, весьма тривиальна:
easy_install zc.buildout
либо
pip install zc.buildout
С основной (но не слишком подробной) документацией можно ознакомиться здесь -ссылка и здесь - http://buildout.org/.

На глубокое знание по данному вопросу я, естественно, не претендую (тем паче, что при помощи buildout'а можно делать довольно-таки удивительные штуки). Главным поводом для шевеления в данном направлении было то, что единственный стоящий recipe для Django - djangorecipe был заброшен автором еще в младенческой версии - 0.20 (сиречь: не поддерживает ветку 1.2.х)
В связи с этим ваш непокорный навалял на коленке за 20 минут небольшой, но вполне рабочий эрзац (о чем уже писал в своем блоге). Точнее - вырезал его из более крупного собственного buildout'а. С результатом трудов можно ознакомится здесь - github. Там же можно найти и короткую инструкцию по обращению со всем этим делом.

На гордое звание recipe поделие это, конечно, не претендует - мной был набросана всего лишь пара-тройка шаблонов. Но со свой задачей они справляются.Существовавший djangorecipe переделывать не стал (хотя все дело там в нескольких строчках) - мне самому удобнее пользоваться именно шаблонами, т.к. в них гораздо проще вносить изменения. Сейчас шаблоны buildout'a неспешно переводятся на Jinja2, но, боюсь, они уже будут не столь просты и более специфичны.
Для бОльшей автоматизации - если вы используете Eclipse, - советую посмотреть в сторону rbco.recipe.pyeclipse, позволяющего, среди прочего, настроить автокомплит и прочие прелести жизни.
Если кому интересно, то могу подробнее написать про buildout.
+ 8 -
0
wiz 15.12.2010 21:29

PythonСкелет Django-проектов

За вот уже 5 лет работы с джангой (с самого открытия код, ага) я уже столько раз делал ./manage.py startproject что уже и не счесть. И каждый раз это сопровождалось кучей рутинных операций типа настройки бд, созданием одних и тех же приложений. Первое время сама джанга менялась очень быстро и как-то это зафиксировать было практически нереально. К тому же фактически небыло инфраструктуры приложений, репозиториев и прочей обвязки. Но сейчас ситуация намного лучше.

Поэтому, представляю недавно собраный скелет типового джанго-сайта. Две команды и получается готовый сайт-со-страницами, готовый к навешиванию мясца.

Это не просто куча кода, но и некоторые решения из практики. Эти фичи я отметил по тексту жирненьким.

Репа с кодом: https://code.launchpad.net/~wiz/+junk/dbones
Лог работы: http://dumpz.org/25701/

Что внутри?
Полностью.
+ 18 -
34
x0x01 25.03.2011 16:59

СкриптыКачаем обновленные торренты c rutracker.org

Как известно, многие раздачи ведутся путем добавления новых файлов к уже существующим, у rutracker.org нет прямого RSS на обновленный torrent файл.
Данный скрипт исправляет этот недостаток. Обходя ссылки из файла urls.lst, проверяет изменились ли размеры torrent файлов, в случае изменений - сохраняет обновленный и запоминает размер в last.lst

Не забудьте перед запуском создать urls.lst и пустой last.lst в каталоге со скриптом.

Собственно код:

#!/usr/bin/env python2
# -*- coding: UTF-8 -*-
# created by x0x01 (aka.x0x01[AT]gmail[dot]com)

import urllib, urllib2, cookielib
from string import strip

LOGIN = 'username'
PASS = 'password'
# путь для сохранения torrent файла
OUT_DIR = './'
#OUT_DIR = '/tmp/gettor/'

# формирование кук
post_params = urllib.urlencode({
'login_username' : LOGIN,
'login_password' : PASS,
'login' : '%C2%F5%EE%E4'
})

# инит обработчика кук
cookie = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie))
urllib2.install_opener(opener)

# авторизация + сессия с куками
web_obj = opener.open('http://login.rutracker.org/forum/login.php', post_params)
data = web_obj.read()

try:
# читаем файл со ссылками, формируем список
fl_url_list = open('urls.lst', 'r')
url_arr = fl_url_list.readlines()
fl_url_list.close()
# чтение файла "размеров", формируем список
fl_dta_list = open('last.lst', 'r')
dta_arr = fl_dta_list.readlines()
fl_dta_list.close()
except IOError:
print 'err'
dta_arr = []


# открытие на запись для новых "размеров" в last.lst
fl_dta_list = open('last.lst', 'w')

# из списка "размеров" формируем словарь ID:SIZE
dta_dic = {}
for curr in dta_arr:
# отрезаем переносы строк
curr = strip(curr)
# делим строку по пробелу и создаем словарь
dta_dic[str.split(curr)[0]] = str.split(curr)[1]

# сохранение torrent файла
def dw_torrent_f(b_data, f_name):
f = open(OUT_DIR+f_name+'.torrent', 'w')
f.write(b_data)
f.close()

# обработка ссылок
for thread_url in url_arr:
# отрезаем переносы строк
thread_url = strip(thread_url)
# делим ссылку на 2 части (получение id форума)
topic_id = str.split(thread_url,'=')[1]
dl_torrent_url = 'http://dl.rutracker.org/forum/dl.php?t='+topic_id
# получение torrent файла по ссылке
web_obj = opener.open(dl_torrent_url, post_params)
data = web_obj.read()
# сравнение размеров полученного файла и в last.lst
try:
if len(data) <> int(dta_dic[topic_id]):
# этот обновился, сохраняем
print '[^]', thread_url
dw_torrent_f(data, topic_id)
except (IndexError, KeyError):
# этот новый, сохраняем
print '[+]', thread_url
dw_torrent_f(data, topic_id)
#print 'UPD:', dl_torrent_url, 'new:', len(data), 'old:', m_dic[topic_id]
# пишем в last.lst новые значения id и размер
fl_dta_list.write(str(topic_id)+' '+str(len(data))+'\n')

# закрытие файла
fl_dta_list.close()


кусочек моего urls.lst

http://rutracker.org/forum/viewtopic.php?t=3414220
http://rutracker.org/forum/viewtopic.php?t=3216842
http://rutracker.org/forum/viewtopic.php?t=3157454

Полностью.
+ 0 -
16
pozadi 10.09.2011 20:55

Мой OpenSource проектПростой вики-движок для личных заметок

Приветствую!

До недавнего времени я хранил свои заметки на wikidot.com пока меня в конец не доконала его тормазнутость, и я не решил написать свой простой и быстрый велосипед движок.

Через несколько дней он был готов, и увидел я что получилось не плохо, и решил поделиться с общественностью. Так родился сервис zen-wiki.appspot.com - велкам, может кому-нибудь понравится и тоже будете пользоваться.

Ах да, опенсорц, вот исходники.

Если возникнут вопросы по использованию с удовольствием отвечу в комментариях.

P.S.
Моя вики (для примера)
+ 10 -
13
1 2 42 43 44 45 46 47 48 49

Смотреть онлайн бесплатно

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн