大家下午好!在
基本上,在使用Flask框架在Python中运行编程代码时,我在阅读西里尔字母时遇到了一个问题。在
“mamapapa”必须是西里尔文–“mmаmenаПа”
我的代码是:
# -*- coding: utf-8 -*-
from flask import Flask, jsonify
from unidecode import unidecode
from venv import logger
app = Flask(__name__)
names1=""
@app.route('/hashtags/<string:names>', methods=['GET'])
def get_hashtags(names):
names1 = "#" + 'names'
np= logger.start(names1)
return jsonify({'Сегментация хэштегов': unidecode(np)})
if __name__ == '__main__':
app.run(port=9876)
如您所见,我已经使用unidecode将西里尔字母翻译成第return jsonify({'Сегментация хэштегов': unidecode(np)})
行中的拉丁字母,但这不是我真正想要做的。我的主要目的是在得到输出时精确地得到西里尔文符号(比如Приер或США)。在
据我所知,在浏览器URL中不可能使用西里尔字母?这是真的吗?还是有任何可能的方法来达到我的目标,得到西里尔文的输出?在
也许有什么东西是用'UTF-8'编码/解码的?在
提前谢谢!在
试着给予。 示例:
你说得对。URL字符是有限的:纯拉丁字母(a-z,小写和大写)和符号:
-
,_
,.
,~
。其他字符用%
后跟两个十六进制数字转义。[来源:RFC3986 appendix-A]。有些人可以创造性地使用其他字符,这些字符实际上分割了路径和参数(例如+
、括号等)。。在历史上,URL被设计成供机器使用(
http://www.
不是最容易被人类阅读的前缀),所以这样的转义:可以放入所有字节,但这样的字节是用%
编码的。在域可以使用其他字符(ASCII以外的字符),但在这种情况下,它只是一种编码标准(到ASCII):DNS和协议仍然只使用ASCII字符。在
浏览器可以自动转义,您可以显示未转义的URL,但实际的URL是转义的。如果这种自动转义可以与邮件客户端/浏览器一起使用,那么您应该尝试使用您(或您的客户机)的用例。在
在任何情况下,使用HTML,您可以将URL显示为URL栏上要显示的URL上的实际URL(在链接上,您可以使用javascript进行一些控制)。在
相关问题 更多 >
编程相关推荐