[spider-1 post参数]

186 阅读1分钟

1. requests.post(url,data=None,json=None,**kwargs)

  • data 和 json 参数的类型既可以是 str,也可以是 dict
  • 不管json是str还是dict,如果不指定headers中的content-type,默认为application/json
  • data为dict时,如果不指定content-type,默认为application/x-www-form-urlencoded,相当于普通form表单提交的形式
  • data为str时,如果不指定content-type,默认为text/plain
  • json为dict时,如果不指定content-type,默认为application/json
  • json为str时,如果不指定content-type,默认为application/json
  • 用data参数提交数据时,request.body的内容则为a=1&b=2的这种形式,用json参数提交数据时,request.body的内容则为'{"a": 1, "b": 2}'的这种形式

2.什么时候使用data,什么时候使用json

  • 当请求header中Content-Type参数的值为 (application/json; charset-utf-8),使用json
  • 当请求header中Content-Type参数的值为(application/x-www-form-urlencoded),使用data

3.exp (请勿用作非法用途)