Python使用requests提交HTTP表单的方法

yipeiwu_com6年前Python基础

Python的requests库, 其口号是HTTP for humans,堪称最好用的HTTP库。

使用requests库,可以使用数行代码实现自动化的http操作。以http post,即浏览器提交一个表格数据到web服务器,为例,来说明requests的使用。

无cookie

import requests
url = 'www.test.org'
data = {'username': 'user', 'password': '123456'}
response = requests.post(url, data)

有cookie——显示添加cookie

import requests
url = 'www.test.org'
data = {'username': 'user', 'password': '123456'}
headers = {'Cookie': 'SshCAcaoCookie-6-2=qQOGw0eWu7vZiumIAezdJJEUL3w-'}
response = requests.post(url, data, headers=headers)

有cookie——隐式添加cookie

import requests
url = 'www.test.org'
data = {'username': 'user', 'password': '123456'}
session = requests.Session()
session.get(url)
response = session.post(url, data,)

在调试以上脚本时,可以通过对比使用浏览器和使用Python脚本时的tcpdump文件,来定位问题。使用tcpdump抓包时,建议指定网卡和端口号抓包:

tcpdump -i network_interface_name port port_num -s 0 -w ./1.pcap

以上这篇Python使用requests提交HTTP表单的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python pygame实现2048游戏

python pygame实现2048游戏

实现2048相对来说比较简单,用4*4的二维数组保存地图,pygame.key.get_pressed()获取键盘操作,详见代码。 效果图 代码 # -*- coding: ut...

Django实现分页显示效果

Django中提供了一个类Paginator专门用来管理和处理分页数据,所以我们在使用之前先导入好相应的类,,另外这里我们也导入了待会会用到的处理异常的两个类 EmptyPage和Pag...

Python编程把二叉树打印成多行代码

题目描述 从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。 思路: 1、把每层节点的val值用list存好 2、把每层节点存好: ①计算当层节点的个数,这样就保证下一步每...

使用Python从有道词典网页获取单词翻译

从有道词典网页获取某单词的中文解释。 import re import urllib word=raw_input('input a word\n') url='http://...

利用python解决mysql视图导入导出依赖的问题

视图 视图是一个虚拟表(非真实存在),其本质是根据SQL语句获取动态的数据集,并为其命名,用户使用时只需使用名称即可获取结果集,并可以将其当作表来使用。 创建视图 创建一个名称为v1的视...