Уведомления

Группа в Telegram: @pythonsu

Уведомления

  • Found 3483 posts.

Network » Передача изображения с камеры используя модуль Telit » Фев. 18, 2009 20:54:20

Есть камера и gsm/gprs модем(Telit), для модуля можно писать скрипты на питоне. Отправляя команды модулю из скрипта можно управлять камерой, есть ftp и smtp клиенты итд.
Задача: сделать просмотр изображения(фотографий) с камеры на мобильном телефоне.
Хотел бы узнать как это лучше реализовать? Есть ли реализация rtsp-сервера или подобного на python? Насколько урезан питон в этих модулях(у winpy, что предлагают скачать все базовые модули вроде есть, но об их использовании в документации к модулю ничего не сказано)?

GUI » проблема с cairo » Фев. 17, 2009 13:16:21

При импорте cairo может возникать такая ошибка:
—————————
Microsoft Visual C++ Runtime Library
—————————
Runtime Error!

Program: C:\Python25\Python.exe

R6034

An application has made an attempt to load the C runtime library incorrectly.
Please contact the application's support team for more information.


Версии PyCairo пробовал как 1.2, так и 1.4

Django » url + unicode » Фев. 16, 2009 14:12:47

Здравствуйте.
Вопрос:
Как правильно преобразовывать запрос пришедший от клиента если он содержит например так: /?q=%D1%86%D1%86.

то есть
у меня код:
def reference_street(request):
word = request.GET.get('q', u'---')
try:
streets = ReferenceStreet.objects.filter(street__startswith=word)
except:
streets = u'None'
return HttpResponse(streets)
если request приходит такой:

Django version 1.1 pre-alpha SVN-9832, using settings 'notary.settings'
Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
[16/Feb/2009 15:09:30] "GET /bookreference/street/?q=w&limit=150&timestamp=1234789769304 HTTP/1.1" 200 38
то нормально выборка из базы осуществляется, но если с например русской буквой “З” и в базе есть записи начинающиеся с этой буквы то запрос проходит с кодом 200 но ничего не выбирает

[16/Feb/2009 15:12:19] "GET /bookreference/street/?q=%D0%B7&limit=150&timestamp=1234789939903 HTTP/1.1" 200 0
В чем ошибка ведь вроде же в уникоде запрос приходит?

Спасибо.

Django » Особенности M2M поля » Фев. 15, 2009 23:13:43

Hi.
Вопросы:
Если в моей модели существует поле ManyToManyField и необходимо добавлять и удалять объекты через браузер, (по аналогии с админкой):
1) какие нужно добавить в эту модель встроенные методы, менеджеры ?
2) есть ли какие то особенности в методе __unicode__(self) для этого поля?
3) В админке есть поле “полномочия” c M2M и там используется “create_many_related_manager, ManyRelatedManager” нужно ли их использовать или это сделано для самой админки? Возможно нужно от них наследоваться например?
В документации по поиску этих ключевых слов (ManyRelatedManager …) ничего не нашел.
4) Есть ли какие то хитрости по работе с этим полем - например читал :
цитата:
“Я обычно такое делаю, заводя в главной модели (Book) поле типа authors_str, куда при изменениях в книгах и авторах прописывается строчка из авторов через запятую. По нему и сортировать удобно.

Если можно, поясните, что дает такой костыль в том смысле, что без него – какие возникают проблемы? Непонятно значение этого хака.


Спасибо.

Pyramid / Pylons / TurboGears » FormAlchemy » Фев. 15, 2009 18:58:58

Решил попробовать FormAlchemy с Pylons. Есть метод контроллера
    def index(self):
countries = si.meta.Session.query(si.Countries).first()
c.a_countries = FieldSet(countries, data=request.params)
if c.a_countries.validate():
c.a_countries.sync()
si.meta.Session.commit()
c.a_countries.configure(options=[c.a_countries.name.label(_(u'Наименование')).required(),
c.a_countries.code.label(_(u'Код')).required(),
c.a_countries.archive.label(_(u'Архив')),],
exclude = [c.a_countries.createdt],
readonly=False)
return render('/admin/layouts/geography.mako')
При выполнении вылетает ошибка KeyError: “Key not found: u'Countries-5-code'”

Django » Имя формы в запросе » Фев. 13, 2009 16:30:27

Здравствуйте.

Вопрос: Если при определении формы задать ей имя то где должна она пойти на сервер, но в POST данных ее нет. <form name=“foo” method=“POST”>…</form>. Где можно отловить значение этой переменной?

Спасибо

Django » Upload файла через ModelForm » Фев. 11, 2009 04:45:20

Здравствуйте
Подскажите что я делаю не так, что у меня форма не валидится, и соответственно не сохраняет в базу
код:
class Photo(models.Model):
description = models.CharField(max_length=100, blank=True)
photo = models.ImageField(upload_to='/home/r/project/django/mysite/' )

class PhotoForm(forms.ModelForm):
class Meta:
model = Photo
через shell:
In : frm = PhotoForm( { “foto”: “/media/DATA_VFAT/myavatar/1P.JPG”} ).save()

ValueError: The Photo could not be created because the data didn't validate.

а по пути что я указал файл существует
r@r:~/project/django/mysites$ ls /media/DATA_VFAT/myavatar/
1P.JPG
r@r:~/project/django/mysites$

Спасибо

Python проекты » OpenOpt (численная оптимизация) » Фев. 7, 2009 16:46:01

Free numerical optimization framework.
Коммерческие аналоги (AMPL, GAMS, TOMLAB, TOMNET, LINGO, AIMMS) стоят тысячи долларов.

Homepage: http://openopt.org

Краткое описание:

українською
російською
англійською

Made by Dmitrey

Python для новичков » доработка игры pyInvaders » Фев. 5, 2009 22:52:29

Здравствуйте!

Решил попробовать свои силы в питоне. Но столкнулся с проблемами, которые заключаются в следующем. Берем за основу игру pyInvaders (в одном из номеров LXF лежит). Далее дорабатываю код. Ступор возник на моменте реализации столкновения ракет, т.е. при столкновении ракеты игрока и ракеты противника, координаты их обнуляются, но как прописать на том месте картинку взрыва (которая должна появится и ичезнуть практически сразу)? А также, каким образом прописывается меню игры на питоне, чтобы была возможность выбора новой игры, показа maxscore и выхода из игры? Использую библиотеку pygame.

P.S. Прошу прощения за сумбурное изложение проблемы. Если нужны фрагменты кода, готов предоставить.

Django » Form wizard + forms.ModelForm » Фев. 4, 2009 23:45:11

Здравствуйте.
Возможно ли использование в Form wizard встроенном приложении – forms.ModelForm. И как разделить по каким формам эти поля поля будут расположены.

Спасибо

Web » Проблема с кодировками smtplib » Фев. 4, 2009 06:56:39

Всем доброго!
Честно говоря не пойму, где нужно поставить кодировку чтобы письма приходили в нормальном виде (кодировка: cp1251), вследующем скрипте
import urllib
import smtplib
def createhtmlmail (html, subject):
"""Create a mime-message that will render HTML in popular
MUAs, text in better ones"""
import MimeWriter
import mimetools
import cStringIO

out = cStringIO.StringIO() # output buffer for our message
htmlin = cStringIO.StringIO(html)

writer = MimeWriter.MimeWriter(out)
#
# set up some basic headers... we put subject here
# because smtplib.sendmail expects it to be in the
# message body
#
writer.addheader("Subject", subject)
writer.addheader("MIME-Version", "1.0")
#
# start the multipart section of the message
# multipart/alternative seems to work better
# on some MUAs than multipart/mixed
#
writer.startmultipartbody("alternative")
writer.flushheaders()
#
# start the html subpart of the message
#
subpart = writer.nextpart()
subpart.addheader("Content-Transfer-Encoding", "quoted-printable")
#
# returns us a file-ish object we can write to
#
pout = subpart.startbody("text/html", [("charset", 'cp-1251')])
mimetools.encode(htmlin, pout, 'quoted-printable')
htmlin.close()
#
# Now that we're done, close our writer and
# return the message body
#
writer.lastpart()
msg = out.getvalue()
out.close()
return msg

# Формирование файла weather.html
citycode = '27612'

_url = "http://www.gismeteo.ru/towns/" + citycode + ".htm"
skin = 'default'

u = urllib.urlopen(_url)
s = u.read()
p1 = s.find('var frc=\'') + 9
p2 = s.find('\'',p1)
s = s[p1:p2]

s = s.replace('align=center ', '')
s = s.replace('<span class=sml>', '')
s = s.replace('</span>', '')
s = s.replace('nowrap', 'nowrap="true"')
s = s.replace('<table', '<table class="tbl"')
s = s.replace('bgcolor=F0F0F0', 'class="cl1"')
s = s.replace('bgcolor=F0FFF0', 'class="cl2"')
s = s.replace('bgcolor=F0F0FF', 'class="cl3"')
s = s.replace('bgcolor=FFF0F0', 'class="cl4"')
s = s.replace('bgcolor=FFFFF0', 'class="cl5"')
s = s.replace('bgcolor=FFFFFF', 'class="cl6"')

b = 1
while b:
p1 = s.find('<img')
if p1 == -1:
b = 0
else:
p2 = s.find('>',p1)
if p2 == -1:
b = 0
else:
_oldstr = s[p1:p2+1]
_newstr = ''
pp1 = _oldstr.find('title="')
if pp1 > -1:
pp2 = _oldstr.find('"',pp1+7)
if pp2 > -1:
_newstr = _oldstr[pp1+7:pp2]
s = s.replace(_oldstr, _newstr)


f = open('weather.html', 'w')
f.write('<html>\n<head>\n<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">\n</head>\n<body>\n')
f.write(s+'\n')
f.write('</body>\n</html>')
f.close()

#Отправка почты
html = open("weather.html").read()
subject = "Погода сегодня!"
message = createhtmlmail(html, subject)
server = smtplib.SMTP("111.111.111.111")
server.sendmail('my@mail.ru', ['you@mail.ru'], message)
server.quit()

Python для новичков » решения проверки стойкости пароля » Янв. 29, 2009 22:38:57

hi.

Вопрос:

Существуют ли готовые решения проверки стойкости (надежности пароля). Чтобы не изобритать велосипед.

Спасибо.

Инструментальные средства разработки » Eric4 и консоль » Янв. 29, 2009 15:45:47

День добрый
Стоит русская Windows XP соотвественно в консоли сообщения на русском.
Как сделать чтобы в Eric4 выводился русский в терминале и консоле, а не кракозябры?

GUI » pyQt Redirecting output после вызова QtGui.QFileDialog.getOpenFileName » Янв. 22, 2009 17:35:50

После вызова функции QtGui.QFileDialog.getOpenFileName выводится сообщение
Redirecting output to win32trace remote collector
и соответсвенно не видно что печатает print или ошибки.
Из-за чего это?
Спасибо.

GUI » [wxWidgets 2.8.9] Перемещение графических примитивов » Янв. 22, 2009 15:00:27

В wxWidgets нужно реализовать рисование, редактирование, перетаскивание мышью графических примитивов. Еще необходимо определять над какой фигурой находится курсор.
Есть ли в wxWidgets готовое решение или сторонние компоненты или все придется рисовать самому?

GUI » Проблема с главным меню и статус баром, PyQt4 » Янв. 22, 2009 11:32:36

Сделал интерфейс с помощью сетки, примерно так же как здесь http://forum.script-coding.info/viewtopic.php?pid=15928#p15928
Но теперь появилась проблема с QStatusBar и QMenuBar
Пока их не добавишь на горизонтальный, вертикальный или табличный на форме они не появляются. А если добавить то встают не там где должный быть при привычном интерфейсе с большим отступом от краев окна.
Как поставить их на свое место?
Например, вот эти:
        exit = QtGui.QAction(QtGui.QIcon('icons/exit.png'), 'Exit', self)
exit.setShortcut('Ctrl+Q')
exit.setStatusTip('Exit application')
self.connect(exit, QtCore.SIGNAL('triggered()'), QtCore.SLOT('close()'))
QtGui.QStatusBar()
menubar = QtGui.QMenuBar()
file = menubar.addMenu('&File')
file.addAction(exit)
Может быть они там и есть, но их менеджеры перекрывают? Как это обойти тогда?

Флейм » Киев, привет :) » Янв. 20, 2009 10:19:11

Собрался я вот на следующей неделе посетить свою историческую родину, Украину. Что то где то рядом с Бердичевом :)
Кто подскажет, можно ли совершить марш-бросок из Бердичева в Киев, буквально на день. То есть с утра приехать и вечером уехать.
И самое главное, интересны места и красоты в Киеве, которые остануться в моей памяти. Проблема в сжатых сроках, поэтому экскурсии отпадают :(
Кто подскажет? (Можно со ссылками гугл мапса)

Django » Ограниченная выборка в ManyToManyFields » Янв. 20, 2009 06:22:39

Вопрос по кустомизации админки.
Нужно сделать так чтоб в одной из моделей в поле ManyToMany отображались только те элементы которые уже относятся к данному.
Т.е. добавляется новый элемент и его поле ManyToMany пустое, добавить в него элементы можно только новой загрузкой (Django 0.96.2).

GUI » QWebView сохранение запросов » Янв. 19, 2009 05:23:52

Хочу получить содержимое всех HTTP запросов QWebView (картинки, css, html, js, ..)
По идеи вызов networkReply.readAll() должен возвращать контент запроса, однако на практике в нём содержится лишь часть данных или их вовсе нет.

В чём может быть проблема?
Заранее спасибо!

import sys
from PyQt4 import QtWebKit, QtCore, QtGui, QtNetwork, Qt

class MainWindow(QtGui.QMainWindow):
def __init__(self):
super(MainWindow,self).__init__()

self.setFixedWidth(800)
self.setFixedHeight(652)

self.browser = QtWebKit.QWebView(self)
self.browser.setFixedWidth(800)
self.browser.setFixedHeight(652)
self.connect(self.browser.page().networkAccessManager(), QtCore.SIGNAL("finished(QNetworkReply*)"), self.finished)
self.browser.load(QtCore.QUrl("http://ya.ru"))

def finished(self, networkReply):
## Выводим URL
print networkReply.url().toString()

## Вывод содержимого запроса.
print networkReply.readAll()

if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
main = MainWindow()
main.show()
sys.exit(app.exec_())

GUI » Qt будет доступна теперь и под LGPL » Янв. 15, 2009 16:56:39

Новость на ЛОРе
Компания Nokia объявила о том, что, начиная с версии 4.5, кросс-платформенная библиотека Qt будет доступна также под лицензией LGPL.

P.S. На ЛОРе объявлен новый мем: “GTKапец” ;) :lol:.