使用GET方法在Python中的请求中编码问题

发布于 2025-02-13 16:34:59 字数 2702 浏览 0 评论 0原文

我在Python中向以下URL提出请求:

url = 'https://app.rdstation.com.br/web_api/v1/campaigns/'+str(inf_email['campaign_id'])+'/campaign_data'

请求代码是:

response = ses.request('GET', url=url)
data = response.json()
print('My data is: ',data)

响应后。 一些数据开始返回,但是在某些对象发生以下错误之后:

My data is: 
{
   "email_subject":"Peers Consulting: �ltimos Conte�dos",
   "from_email":"[email protected]",
   "email_name":"Duplicado de Newsletter #14",
   "email_id":9762592,
   "send_at":"2022-06-07T19:52:16Z",
   "partial_sending":false,
   "campaign_status":"finished",
   "leads_query_type":"Lead::Filter::FilterNull",
   "to_list":{
      "selected":[
         "Todos os contatos da base de Leads",
         "Clientes (est�gio no funil)",
         "News_Site",
         "VCO_Herospark",
         "Home Agile_HeroSpark"
      ],
      "except":[
         
      ]
   },
   "behavior_score":{
      "engaged":{
         "count":555,
         "rate":32.03,
         "selected":true
      },
      "indeterminate":{
         "count":281,
         "rate":16.21,
         "selected":false
      },
      "disengaged":{
         "count":695,
         "rate":40.1,
         "selected":false
      },
      "invalid":{
         "count":202,
         "rate":11.66
      }
   }
}
My data is:
{
   "email_subject":"8 de mar�o: um dia de luta e reconhecimento",
   "from_email":"[email protected]",
   "email_name":"Newsletter #13",
   "email_id":9032601,
   "send_at":"2022-03-08T17:12:22Z",
   "partial_sending":false,
   "campaign_status":"finished",
   "leads_query_type":"Lead::Filter::FilterNull",
   "to_list":{
      "selected":[
         "Todos os contatos da base de Leads"
      ],
      "except":[
         
      ]
   },
   "behavior_score":{
      "engaged":{
         "count":630,
         "rate":45.32,
         "selected":true
      },
      "indeterminate":{
         "count":36,
         "rate":2.59,
         "selected":true
      },
      "disengaged":{
         "count":530,
         "rate":38.13,
         "selected":false
      },
      "invalid":{
         "count":194,
         "rate":13.96
      }
   }
}

 Traceback (most recent call last):  UnicodeEncodeError: 'charmap' codec can't encode characters in position 19-20: character maps to <undefined>

可能会编码我的 ses.request() or wenspy.json()?我该如何在Python中做到这一点?

I am making a request in python to the following URL:

url = 'https://app.rdstation.com.br/web_api/v1/campaigns/'+str(inf_email['campaign_id'])+'/campaign_data'

The request code is:

response = ses.request('GET', url=url)
data = response.json()
print('My data is: ',data)

After response.json I'm displaying data with a print.
Some data starts to be returned but after some objects the following error happens:

My data is: 
{
   "email_subject":"Peers Consulting: �ltimos Conte�dos",
   "from_email":"[email protected]",
   "email_name":"Duplicado de Newsletter #14",
   "email_id":9762592,
   "send_at":"2022-06-07T19:52:16Z",
   "partial_sending":false,
   "campaign_status":"finished",
   "leads_query_type":"Lead::Filter::FilterNull",
   "to_list":{
      "selected":[
         "Todos os contatos da base de Leads",
         "Clientes (est�gio no funil)",
         "News_Site",
         "VCO_Herospark",
         "Home Agile_HeroSpark"
      ],
      "except":[
         
      ]
   },
   "behavior_score":{
      "engaged":{
         "count":555,
         "rate":32.03,
         "selected":true
      },
      "indeterminate":{
         "count":281,
         "rate":16.21,
         "selected":false
      },
      "disengaged":{
         "count":695,
         "rate":40.1,
         "selected":false
      },
      "invalid":{
         "count":202,
         "rate":11.66
      }
   }
}
My data is:
{
   "email_subject":"8 de mar�o: um dia de luta e reconhecimento",
   "from_email":"[email protected]",
   "email_name":"Newsletter #13",
   "email_id":9032601,
   "send_at":"2022-03-08T17:12:22Z",
   "partial_sending":false,
   "campaign_status":"finished",
   "leads_query_type":"Lead::Filter::FilterNull",
   "to_list":{
      "selected":[
         "Todos os contatos da base de Leads"
      ],
      "except":[
         
      ]
   },
   "behavior_score":{
      "engaged":{
         "count":630,
         "rate":45.32,
         "selected":true
      },
      "indeterminate":{
         "count":36,
         "rate":2.59,
         "selected":true
      },
      "disengaged":{
         "count":530,
         "rate":38.13,
         "selected":false
      },
      "invalid":{
         "count":194,
         "rate":13.96
      }
   }
}

 Traceback (most recent call last):  UnicodeEncodeError: 'charmap' codec can't encode characters in position 19-20: character maps to <undefined>

It would be possible encode my ses.request() or response.json()? How can i do it in python?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

阳光下慵懒的猫 2025-02-20 16:34:59

在ASCII中解码JSON可以解决该问题。

import json

data = response.json()
data = json.loads(json.dumps(data).encode('utf-8').decode('ascii','ignore'))
print(data)

Decoding the json in ascii can solve the issue.

import json

data = response.json()
data = json.loads(json.dumps(data).encode('utf-8').decode('ascii','ignore'))
print(data)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文