首页 > 解决方案 > 在python中使用requests.post时如何处理400错误

问题描述

该网站是https://www.kaggle.com/kaushal2896/imaterialist-2020-starter-eda-mask-rcnn 我打算使用请求通过单击右上角的“复制和编辑”来获取 json 响应。邮政。

这是我的代码:

data = {
    "kernalFilterCriteria":{
        "forkedParentScriptId":8590590,
        "page":1,
    }
}

headers = {
         "__RequestVerificationToken": "CfDJ8LdUzqlsSWBPr4Ce3rb9VL8oJajmlPozuTAHYWzr2Wj8QbBo4TA-j9Z5m4f5Ccg-Jl3Ba7j-_aDSCekHTzBkgFjzvWYd83s0W1dTcFN72idEg5Cfp80oxVw-xLjDIuPZqsricb0B-lgKc0l1M7_dQm4",
        "Accept": "application/json",
        "Accept-Encoding": "gzip, deflate, br",
        "Accept-Language": "en-US,en;q=0.5",
        "Connection": "keep-alive",
        "Content-Length":"64",
         "Cookie":"ka_sessionid=f226b2463f9ad144916fd22ee830d5f3; CSRF-TOKEN=CfDJ8LdUzqlsSWBPr4Ce3rb9VL8ikrtk4InHQQmnp8BLEY1oH1ww5hn_RsbXPTx0KR8mF_fQClaG_M1R0G9K7DOO9DuxqY-yP60AZGhvkZaTPBtPPJnnOJj6YQq3oJSUTuFSKgLkz1BWH7bt46FqGkgFN_I; XSRF-TOKEN=CfDJ8LdUzqlsSWBPr4Ce3rb9VL8oJajmlPozuTAHYWzr2Wj8QbBo4TA-j9Z5m4f5Ccg-Jl3Ba7j-_aDSCekHTzBkgFjzvWYd83s0W1dTcFN72idEg5Cfp80oxVw-xLjDIuPZqsricb0B-lgKc0l1M7_dQm4; CLIENT-TOKEN=eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJpc3MiOiJrYWdnbGUiLCJhdWQiOiJjbGllbnQiLCJzdWIiOm51bGwsIm5idCI6IjIwMjEtMDMtMDJUMDI6NTQ6MjcuOTc4NDE4NloiLCJpYXQiOiIyMDIxLTAzLTAyVDAyOjU0OjI3Ljk3ODQxODZaIiwianRpIjoiOGRmM2Q0MzktMGUzOC00NzhiLWI2NTMtZmZjNmM5OTE4NWFhIiwiZXhwIjoiMjAyMS0wNC0wMlQwMjo1NDoyNy45Nzg0MTg2WiIsImFub24iOnRydWUsImZmIjpbIkRvY2tlck1vZGFsU2VsZWN0b3IiLCJBY3RpdmVFdmVudHMiLCJHY2xvdWRLZXJuZWxJbnRlZyIsIktlcm5lbEVkaXRvckNvcmdpTW9kZSIsIkNhaXBFeHBvcnQiLCJDYWlwTnVkZ2UiLCJLZXJuZWxzQWRqdXN0QmFzZVBhdGgiLCJLZXJuZWxzRmlyZWJhc2VMb25nUG9sbGluZyIsIktlcm5lbHNQcmV2ZW50U3RvcHBlZFRvU3RhcnRpbmdUcmFuc2l0aW9uIiwiRGF0YXNldExpdmVNb3VudCIsIkRhdGFzZXRzVGFza09uTm90ZWJvb2tMaXN0aW5nIiwiRGF0YXNldHNEYXRhRXhwbG9yZXJWM1RyZWVMZWZ0IiwiQXZhdGFyUHJvZmlsZVByZXZpZXciLCJEYXRhc2V0c0RhdGFFeHBsb3JlclYzQ2hlY2tGb3JVcGRhdGVzIiwiRGF0YXNldHNEYXRhRXhwbG9yZXJWM0NoZWNrRm9yVXBkYXRlc0luQmFja2dyb3VuZCIsIktlcm5lbHNTdGFja092ZXJmbG93U2VhcmNoIiwiS2VybmVsc01hdGVyaWFsTGlzdGluZyIsIkRhdGFzZXRzTWF0ZXJpYWxEZXRhaWwiLCJEYXRhc2V0c01hdGVyaWFsTGlzdENvbXBvbmVudCIsIkNvbXBldGl0aW9uRGF0YXNldHMiLCJEaXNjdXNzaW9uc1Vwdm90ZVNwYW1XYXJuaW5nIiwiVGFnc0V4cGVyaW1lbnRVSSIsIlRhZ3NMZWFybkFuZERpc2N1c3Npb25zVUkiLCJOb1JlbG9hZEV4cGVyaW1lbnQiLCJOb3RlYm9va3NMYW5kaW5nUGFnZSIsIk5vdGVib29rc0NvZGVSZW5hbWUiLCJEYXRhc2V0c0Zyb21HY3MiLCJUUFVDb21taXRTY2hlZHVsaW5nIiwiRGlzY3Vzc2lvbktNRm9ydW1QYWdlIiwiRGlzY3Vzc2lvbktNQ29tcGV0aXRpb25zIiwiRGlzY3Vzc2lvbktNRGF0YXNldHMiLCJEaXNjdXNzaW9uS01UYWdzIl0sInBpZCI6ImthZ2dsZS0xNjE2MDciLCJzdmMiOiJ3ZWItZmUiLCJzZGFrIjoiQUl6YVN5REFOR1hGSHRTSVZjNTFNSWRHd2c0bVFGZ20zb05yS29vIiwiYmxkIjoiOWY3Y2JkMzg0NzM5ZTI2MTU3ZmMyM2I4MjNlODFiYjM1ODhmZjhjYyJ9.; GCLB=CPeRzZCSmODNdA; _ga=GA1.2.1760062529.1614653676; _gid=GA1.2.1648909970.1614653676; _gat_gtag_UA_12629138_1=1",
        "TE":"Trailers",
         "X-XSRF-TOKEN":"CfDJ8LdUzqlsSWBPr4Ce3rb9VL8oJajmlPozuTAHYWzr2Wj8QbBo4TA",
        "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.190 Safari/537.36",
        "origin":"https://www.kaggle.com",
        "Host":"https://www.kaggle.com",
        "Content-Type":"application/json",
        "referer":"https://www.kaggle.com/kaushal2896/imaterialist-2020-starter-eda-mask-rcnn",
}

response = requests.post("https://www.kaggle.com/requests/ListKernelsRequest", headers=headers, json=data)

但不知何故,我只得到 400 错误。

预期的结果应该是一个json文件,格式为

result {
    totalCount: value, 
    kernels:{
        kernal1: value, 
        kernal2: value, 
        ......
    }
}

标签: pythonjsonpostpython-requestsweb-crawler

解决方案


推荐阅读