首页 > 代码库 > 关于webpy模板自动HTML转义的问题
关于webpy模板自动HTML转义的问题
注意: web.py
将会转义任何任何用到的变量,所以当你将 name
的值设为是一段 HTML 时,它会被转义显示成纯文本。如果要关闭该选项,可以写成 $:name
来代替 $name
。
如果我们想部分转移,怎么办?
webpy显然提供了转移函数,我们在应用层直接调用就可以了。
from web.net import htmlquote
htmlquote(raw_text)
-------------------------------
- #/usr/bin/python
- #coding=utf-8
- import HTMLParser
- import sys
- reload(sys)
- sys.setdefaultencoding(‘utf-8‘)
- html_parser = HTMLParser.HTMLParser()
- title = ‘eclipse功能<template>学习。e.g : 快速在代码中插入时间戳 - SegmentFault‘
- newtitle = html_parser.unescape(title)
- print newtitle
- 需要载入sys模块,重新设置默认编码为utf8,就不会出错了。不过要处理的内容只不过是一个文章的title部分,而常用的html转义内容也就如下几个
-
于是决定使用python的replace功能实现一个简单的转义功能函数,具体如下:
- #/usr/bin/python
- #coding=utf-8
- def replace_html(s):
- s = s.replace(‘"‘,‘"‘)
- s = s.replace(‘&‘,‘&‘)
- s = s.replace(‘<‘,‘<‘)
- s = s.replace(‘>‘,‘>‘)
- s = s.replace(‘ ‘,‘ ‘)
- s = s.replace(‘ - 361way.com‘,‘‘)
- print s
- replace_html(title)
优点就是快速简洁,不依赖于模块,实用时也无需再reload sys模块指定默认编码。
关于webpy模板自动HTML转义的问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。