您好,登錄后才能下訂單哦!
小編這次要給大家分享的是Python發起請求提示UnicodeEncodeError錯誤代碼怎么辦,文章內容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。
具體錯誤:
UnicodeEncodeError: 'latin-1' codec can't encode characters in position 73-74: Body ('測試') is not valid Latin-1. Use body.encode('utf-8') if you want to send it encoded in UTF-8.
解決:
對請求參數進行編碼處理:
示例代碼:
import requests import json import re import pymysql from tool.Mysql_connect import Mysql_operation from tool.get_token import Crm_token class test_demo(object): def __init__(self): self.op_mysql=Mysql_operation() self.token=Crm_token() def create_yixiang(self): url='http://xxx/customerAdjunctAdd' token=self.token.get_token() headers={"Content-Type":'application/x-www-form-urlencoded', "token":token} try: tel_num=self.op_mysql.sql_select('''select max(tel) from nc_customer_adjunct''')[0]['max(tel)'] #結果為str except Exception as error: print(error) a=1 while a<3: tel_num=int(tel_num)+1 a+=1 data='customer_type=1&source=1&course_name_id=41&tel=%d&customer_name=測試3.1&sex=0&school=測試1&intro_id=0'%(tel_num) try: request1=requests.request("POST",url=url,headers=headers,data=data.encode()) #encode對請求編碼處理:不處理接口會返回數據解析錯誤 # print(data) response1=request1.json() print(headers) print(response1) except Exception as error: print(error) if __name__=="__main__": Tm=test_demo() Tm.create_yixiang()
看完這篇關于Python發起請求提示UnicodeEncodeError錯誤代碼怎么辦的文章,如果覺得文章內容寫得不錯的話,可以把它分享出去給更多人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。