我正在尝试对 UTF-8 文本进行 slugify,在本例中涉及诸如 æøå 之类的字符,我想保留这些字符。
当我使用 slugify 时,它不会维护 UTF-8 字符:
>>> from slugify import slugify
>>> slugify(u'æsel (øen)')
'aesel-oen'
应该是æsel-øen
.
最佳答案
使用不同的库来slugify; unicode-slugify
library输出完全符合您的要求:
$ bin/pip install unicode-slugify
Downloading/unpacking unicode-slugify
Downloading unicode-slugify-0.1.1.tar.gz
Running setup.py (path:/.../build/unicode-slugify/setup.py) egg_info for package unicode-slugify
Downloading/unpacking django (from unicode-slugify)
Downloading Django-1.7-py2.py3-none-any.whl (7.4MB): 7.4MB downloaded
Installing collected packages: unicode-slugify, django
Running setup.py install for unicode-slugify
Successfully installed unicode-slugify django
Cleaning up...
$ bin/python
Python 2.7.8 (default, Sep 19 2014, 22:15:41)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.51)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from slugify import slugify
>>> slugify(u'æsel (øen)')
u'\xe6sel-\xf8en'
>>> print slugify(u'æsel (øen)')
æsel-øen
关于python - 如何在保留 UTF-8 字母的同时进行 slugify,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26442152/