Форум программистов, компьютерный форум, киберфорум
Python: API, боты
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
3 / 3 / 2
Регистрация: 20.05.2015
Сообщений: 35

Python bottle + postgresql

20.05.2015, 18:07. Показов 2689. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Такая проблема:
установил pgadmin3, создал там базу, создал файл index.py:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# -*- coding utf-8 -*-
 
from bottle import route, run, template, request, install
from bottle_pgsql import PgSQLPlugin
 
install(PgSQLPlugin('dbname=test, user=postgres password=111'))
 
@route('/hello')
def hello(db):
    c = db.execute('''SELECT gorod FROM gorod''')
    result = c.fetchone()
    return template('hello', rows=result)
 
run (host='localhost', port=8080, debug=True)
и шаблон hello.tpl:
HTML5
1
2
3
4
5
6
7
8
9
10
<!DOCTYPE HTML>
<html>
    <head>
        <meta charset="utf-8">
        <title>Статистика</title>
    </head>
    <body>
        <h1>{{rows}}</h1>
    </body>
</html>
при переходе на страницу http://localhost:8080/hello вылезает такое чудо:

Code
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
Critical error while processing request: /hello
 
Error:
 
UnicodeDecodeError('utf8', 'Traceback (most recent call last):\n  File "C:\\Users\\User\\Desktop\\test\\bottle.py", line 862, in _handle\n    return route.call(**args)\n  File "C:\\Users\\User\\Desktop\\test\\bottle.py", line 1732, in wrapper\n    rv = callback(*a, **ka)\n  File "C:\\Users\\User\\Desktop\\test\\bottle_pgsql.py", line 83, in wrapper\n    con = psycopg2.connect(dsn)\n  File "C:\\Python27\\lib\\site-packages\\psycopg2\\__init__.py", line 164, in connect\n    conn = _connect(dsn, connection_factory=connection_factory, async=async)\nOperationalError: \xc2\xc0\xc6\xcd\xce:  \xe1\xe0\xe7\xe0 \xe4\xe0\xed\xed\xfb\xf5 "test," \xed\xe5 \xf1\xf3\xf9\xe5\xf1\xf2\xe2\xf3\xe5\xf2\n\n', 512, 513, 'invalid continuation byte')
Traceback:
 
Traceback (most recent call last):
  File "C:\Users\User\Desktop\test\bottle.py", line 954, in wsgi
    out = self._cast(self._handle(environ))
  File "C:\Users\User\Desktop\test\bottle.py", line 907, in _cast
    out = self.error_handler.get(out.status_code, self.default_error_handler)(out)
  File "C:\Users\User\Desktop\test\bottle.py", line 842, in default_error_handler
    return tob(template(ERROR_PAGE_TEMPLATE, e=res))
  File "C:\Users\User\Desktop\test\bottle.py", line 3595, in template
    return TEMPLATES[tplid].render(kwargs)
  File "C:\Users\User\Desktop\test\bottle.py", line 3399, in render
    self.execute(stdout, env)
  File "C:\Users\User\Desktop\test\bottle.py", line 3386, in execute
    eval(self.co, env)
  File "<string>", line 26, in <module>
  File "C:\Users\User\Desktop\test\bottle.py", line 3337, in <lambda>
    self._escape = lambda x: escape_func(touni(x, enc))
  File "C:\Users\User\Desktop\test\bottle.py", line 123, in touni
    return s.decode(enc, err) if isinstance(s, bytes) else unicode(s)
  File "C:\Python27\lib\encodings\utf_8.py", line 16, in decode
    return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: 'utf8' codec can't decode byte 0xc2 in position 512: invalid continuation byte
Не могли бы вы, подсказать как решить эту проблему?
Заранее спасибо!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
20.05.2015, 18:07
Ответы с готовыми решениями:

Python + bottle + uWSGI администрирование сервера (обновление)
Добрый день. У меня есть веб-сервис написанный на питоне с использованием bottle. На vps-сервере все крутится из под uwsgi (голый, сам...

Python 2.7 bottle 3 с bootstrap 3 создать активную вкладку
Доброго дня. имею шаблон вкладок: &lt;ul id=&quot;myTabs&quot; class=&quot;nav nav-tabs nav-justified&quot; role=&quot;tablist&quot;&gt; ...

Поддержка строк Python в шаблонах .tpl для Bottle
Здравствуйте! Начал изучать этот фреймворк и сразу же столкнулся с трудностями при написании template'ов, в документации сказано, что...

1
26 / 26 / 6
Регистрация: 19.10.2012
Сообщений: 131
21.05.2015, 02:57
Файл шаблона точно в utf-8 кодировке находится? Тебе же в логе написали - невозможно декодировать последовательность байт на такой-то позиции.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.05.2015, 02:57
Помогаю со студенческими работами здесь

Как использовать python в postgresql?
Я решил написать простую функцию на python в postgresql. У меня вылезла ошибка, мол, python не установлен, нужно использовать следующую...

Компиляция postgresql 9.3.4-1 для Python 2.7
Здравствуйте, так как установка PostgreSQL с бинарника не позвоняет использовать Python 2.7 для написания хранимых процедур и функций, то...

Python/PyQt5/PostgreSQL/Tkinter
Всем привет! Помогите, пожалуйста, как можно таблицы из БД(postgresql) визуализировать через графический интерфейс? Примерно, как на...

PostgreSQL 8.4 +Python проблема с кодировкой
Доброе время суток, пытаюсь выполнить пример из умной книжки: def insert_tabl_wd(): weekdays= import psycopg2 ...

Как подключить Python и PostgreSQL
Всем здравствуйте, я новичок, подскажите пожалуйста как мне подключить Питон с pgsql. Через драйвера? Чтобы мог создавать таблицы на pgsql...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru