Py学习  »  Python

请求用python发布json

Martin Bouhier • 4 年前 • 604 次点击  

我的问题是当我运行 response.url 在浏览器中,我找到了我想要的答案: https://www.google.com.ar/?code=TG-MYCODE 但是,当我从python执行requests.post并尝试获取response.json()时,它就坏了!( simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

import requests
from urllib.parse import urlencode, quote_plus

params = {
    'client_id': 'CLIENT_ID',
    'response_type': 'code',
    'redirect_uri': 'https://www.google.com.ar',
}

url = 'https://auth.mercadolibre.com.ar/authorization?' + urlencode(params, quote_via=quote_plus)

response = requests.post(url, headers={'Content-Type': 'application/json'})
response.url
>>>'https://www.mercadolibre.com/jms/mla/lgz/login/index?go=https%3A%2F%2Fauth.mercadolibre.com.ar%2Fauthorization%3Fclient_id%3DCLIENT_ID%26response_type%3Dcode%26redirect_uri%3Dhttps%253A%252F%252Fwww.google.com.ar&platform_id=ml&application_id=----'
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/53154
 
604 次点击  
文章 [ 1 ]  |  最新文章 4 年前
jmunsch
Reply   •   1 楼
jmunsch    4 年前

这个错误意味着 requests

>>> response.status_code
500

>>> response.text[:16]
'<!DOCTYPE html>\n'

这意味着该网站已经返回了500个状态,如果您查看响应的内容,我们可以看到该网页返回了一个html页面。

response.json() 看到 < { 作为第一个角色。