删除 AppEngine Python Env 中的 HTML 标签(相当于 Ruby 的 Sanitize)
我正在寻找一个 python 模块,它将帮助我摆脱 HTML 标签但保留文本值。我之前尝试过 BeautifulSoup,但不知道如何完成这个简单的任务。我尝试搜索可以执行此操作的 Python 模块,但它们似乎都依赖于其他在 AppEngine 上运行不佳的库。
下面是来自 Ruby 清理库的示例代码,这就是我在 Python 中所追求的:
require 'rubygems'
require 'sanitize'
html = '<b><a href="http://foo.com/">foo</a></b><img src="http://foo.com/bar.jpg" />'
Sanitize.clean(html) # => 'foo'
感谢您的建议。
-e
I am looking for a python module that will help me get rid of HTML tags but keep the text values. I tried BeautifulSoup before and I couldn't figure out how to do this simple task. I tried searching for Python modules that could do this but they all seem to be dependent on other libraries which does not work well on AppEngine.
Below is a sample code from Ruby's sanitize library and that's what I am after in Python:
require 'rubygems'
require 'sanitize'
html = '<b><a href="http://foo.com/">foo</a></b><img src="http://foo.com/bar.jpg" />'
Sanitize.clean(html) # => 'foo'
Thanks for your suggestions.
-e
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
这将为您提供 (Unicode) 字符串列表。如果您想将其转换为单个字符串,请使用
''.join(thatlist)
。This gives you a list of (Unicode) strings. If you want to turn it into a single string, use
''.join(thatlist)
.如果您不想使用单独的库,那么您可以导入标准 django utils。例如:
它也已经包含在 Django 模板中,所以你不需要任何其他东西,只需使用过滤器,如下所示:
顺便说一句,这是最快的方法之一。
If you don't want to use separate libs then you can import standard django utils. For example:
Also its already included in Django templates, so you dont need anything else, just use filter, like this:
Btw, this is one of the fastest way.
使用lxml:
Using lxml:
印刷:
Prints:
迟到了,但是。
您可以使用 Jinja2.Markup()
http://jinja.pocoo.org/文档/api/#jinja2.Markup.striptags
Late, but.
You can use Jinja2.Markup()
http://jinja.pocoo.org/docs/api/#jinja2.Markup.striptags