python爬虫post请求中的data参数怎么接受json格式的list
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python爬虫post请求中的data参数怎么接受json格式的list相关的知识,希望对你有一定的参考价值。
data中好像不支持接受list怎么解决,json.dumps并没有用
我举个例子你照着改吧import requests
url = "https://192.168.0.1:9999/postdata"
dict_json =
"version": "1.0",
"data": [1, 2, 3, 4]
r = requests.post(url=url, json=dict_json) 参考技术A 请问,问题解决了,我也是这个问题字典类型就可以list类型就有问题 参考技术B 你先把你的python代码贴一下
Python-爬虫-requests库用语post登录
requests库很强大,支持HTTP连接保持和连接池,支持使用cookie保持会话,支持文件上传,支持自动确定响应内容的编码,支持国际化的URL和POST数据自动编码。
可以发送无参数的get请求,也可以发送有参数的get请求,修改headers等等。
这里主要展发送post请求,通过data参数来传递。
比如:登录chinaunix网站,通过登录名、密码来登录。
通过查看chinaunix网站源码,可以看到登录页面的网址是:
http://bbs.chinaunix.net/member.php?mod=logging&action=login&loginsubmit=yes&loginhash=LIcAc
不同的电脑登录网址可能不一样,请查看具体的网页源代码。
为了应对网站的反爬虫,可以修改headers来模拟网页登录。具体如下:
import requests conn = requests.session() url = ‘http://bbs.chinaunix.net/member.php?mod=logging&action=login&loginsubmit=yes&loginhash=LIcAc‘ postdata = { ‘username’:’***’, ‘password’:’***‘ } headers = { ‘User-Agent‘: ‘Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36‘} rep = conn.post(url, data=postdata,headers=headers) with open(‘1.html‘, ‘wb‘) as f: f.write(rep.content)
代码中的登录名和密码换成自己提前注册好的,否则登录不上。
requests库自动保存cookie,不用再单独设置。
import requests conn = requests.session() url = ‘http://bbs.chinaunix.net/member.php?mod=logging&action=login&loginsubmit=yes&loginhash=LIcAc‘ postdata = { ‘username‘:‘zhaoxn04‘, ‘password‘:‘wobugaosuni2004‘ } headers = { ‘User-Agent‘: ‘Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36‘} rep = conn.post(url, data=postdata,headers=headers) with open(‘1.html‘, ‘wb‘) as f: f.write(rep.content) url1 = ‘http://bbs.chinaunix.net/thread-4246512-1-1.html‘ rep1 = conn.get(url1, headers=headers) with open(‘2.html‘, ‘wb‘) as f: f.write(rep1.content)
以上是关于python爬虫post请求中的data参数怎么接受json格式的list的主要内容,如果未能解决你的问题,请参考以下文章