En utilisant la bibliothèque de requêtes de Python pour imiter un client Web personnalisé, j'ai rencontré un problème d'exception après avoir soumis du contenu contenant des caractères chinois.
Après avoir visualisé la requête brute avec Fiddler, nous pouvons voir que le contenu de la soumission du client officiel est :
...
{"jsonstr":"{\"pageindex\":1,\"keyword\":\"张三\"}"}
Le contenu de la soumission client auto-défini est :
...
{"jsonstr": "{'pageindex': 1,'keyword': '\xe5\xbc\xa0\xe4\xb8\x89'"}
Le script pour définir votre propre client est probablement :
# -*- coding: utf-8 -*-
keyword ='张三'
jsonstr ={ "pageindex":1,"keyword":keyword}
data = {"jsonstr":str(jsonstr)}
r = requests.post(url, data =json.dumps(data))
J'ai essayé data =json.dumps(data, Ensure_ascii=False) mais la situation reste la même.
Si le mot-clé est un nombre, tout va bien.
La plateforme utilisée est win7.