Существует ли Python, эквивалентный функции PHP htmlspecialchars ()?

Я попытался объединить код из примера 2 из http://php.net/manual/en/pdo.connections.php в /app/View/Pages/home.ctp. Мне пришлось исправить аргументы конструктора PDO и изменить имя таблицы в запросе. Код примера 2 возвратил ошибку «Ошибка !: Не удалось найти драйвер». Основываясь на ответе короля Jk, я пытался изменить php.ini, когда начал задаваться вопросом, где может жить php_pdo_mysql.so. http://php.net/pdo_mysql показал, как он был скомпилирован как часть PHP с помощью параметра --with-pdo-mysql для настройки. Перекомпиляция исправила мою проблему. Примечание. Я работаю в системе Ubuntu 12.10 с PHP 5.5.9 и Apache Webserver 2.4.6

.

14
задан animuson 6 September 2012 в 21:12
поделиться

5 ответов

Самое близкое, что я знаю, это cgi.escape .

12
ответ дан 1 December 2019 в 12:27
поделиться

Модуль html.entities ( htmlentitydefs для python 2.x) содержит словарь codepoint2name , который должен делать то, что вы необходимо.

>>> import html.entities
>>> html.entities.codepoint2name[ord("&")]
'amp'
>>> html.entities.codepoint2name[ord('"')]
'quot'
1
ответ дан 1 December 2019 в 12:27
поделиться

Возможно, вам понадобится xml.sax.saxutils.escape :

from xml.sax.saxutils import escape
escape(unsafe, {'"':'"'}) # ENT_COMPAT
escape(unsafe, {'"':'"', '\'':'''}) # ENT_QUOTES
escape(unsafe) # ENT_NOQUOTES

Посмотрите xml.sax.saxutils.quoteattr , возможно быть более полезным для вас

3
ответ дан 1 December 2019 в 12:27
поделиться

Если вы используете django 1.0, ваши переменные шаблона уже будут закодированы и готовы к отображению. Вы также можете использовать безопасный оператор {{var | safe}} , если не хотите, чтобы он был включен глобально.

0
ответ дан 1 December 2019 в 12:27
поделиться
from django.utils.html import escape
print escape('<div class="q">Q & A</div>')
6
ответ дан 1 December 2019 в 12:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: