python实现发送form-data数据的方法详解


Posted in Python onSeptember 27, 2019

本文实例讲述了python实现发送form-data数据的方法。分享给大家供大家参考,具体如下:

源代码

-----------------------------279361243530614
Content-Disposition: form-data; name="parent_dir"

/
-----------------------------279361243530614
Content-Disposition: form-data; name="file"; filename="f5.txt"
Content-Type: text/plain

#NodeAddress
import sys
import pycontrol.pycontrol as pc
import time
import csv
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
b = pc.BIGIP(
hostname = '10.4.170.160',
username = 'zjtlcb',
password = 'xxx',
fromurl = True,
  wsdls=['LocalLB.NodeAddress'])
node = b.LocalLB.NodeAddress
print node
print dir(node)
ipaddress='10.4.161.148'
print dir(node)
print node.get_session_enabled_state(node_addresses=[ipaddress])
print node.get_session_status(node_addresses=[ipaddress])
print node.get_monitor_status(node_addresses=[ipaddress])
print node.get_object_status(node_addresses=[ipaddress])
print node.set_monitor_state(node_addresses=[ipaddress],states=['STATE_FORCED_DISABLED'])
print node.get_session_enabled_state(node_addresses=[ipaddress])
print node.get_session_status(node_addresses=[ipaddress])
print node.get_monitor_status(node_addresses=[ipaddress])
print node.get_object_status(node_addresses=[ipaddress])
print node.set_monitor_state(node_addresses=[ipaddress],states=['STATE_ENABLED'])
print node.get_session_enabled_state(node_addresses=[ipaddress])
print node.get_session_status(node_addresses=[ipaddress])
print node.get_monitor_status(node_addresses=[ipaddress])

-----------------------------279361243530614--

# !/usr/bin/env python
# -*- coding: utf-8 -*-
import urllib2
import urllib
import cookielib
import json
import httplib
import re
import requests
import StringIO
import time
import sys
import json
import re
import random
from urllib import quote
from requests_toolbelt import MultipartEncoder
import time
s = requests.session()
username='015208@zjtlcb.com'
password='newja01'
myurl='http://10.4.48.2:8000/accounts/login?next=/'
headers = {
  'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:54.0) Gecko/20100101 Firefox/54.0'
   }
response = s.get(myurl, headers=headers,timeout=10)
a= response.content
#<form action="" method="post" class="con"><input type='hidden' name='csrfmiddlewaretoken' value='ZWnUDf5XVX0kagjIoJLKyU8UdO8KBGFn' />
#p=re.compile('.*?<token>(.*?)</token>*')
p=re.compile('.*<form.*value=\'(.*?)\'.*\s+/>',flags=re.S)
m=p.match(a)
print m
token= m.group(1)
print token
myurl='http://10.4.48.2:8000/accounts/login/?next=/'
headers = {
  'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:54.0) Gecko/20100101 Firefox/54.0'
   }
data={'csrfmiddlewaretoken':token,'login':username,'password':password,'next':'/'}
response = s.post(myurl, data=data, headers=headers,timeout=10)
print response.content
u1='http://10.4.48.2:8000/api2/repos/?type=mine&_=1553493865054'
a= s.get(u1).content
print a
print type(a)
b=json.loads(a)
print b
print type(b)
for i in range(len(b)):
  print str(b[i]).decode('unicode-escape')
  if b[i]['name'] == 'perl':
    uploadid= b[i]['id']
print uploadid
ctime=time.time()
ctime=int(ctime)
u2='http://10.4.48.2:8000/ajax/repo/%s/file_op_url/?op_type=upload&path=%s&_=%s' %(uploadid,'%2F',ctime)
print u2
headers = {
  'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:54.0) Gecko/20100101 Firefox/54.0',
  'X-Requested-With':'XMLHttpRequest'
   }
response=s.get(u2,headers=headers)
b= response.content
print type(b)
print b
c=json.loads(b)
d= c['url']
u3=d
headers = {
  'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:54.0) Gecko/20100101 Firefox/54.0',
  'X-Requested-With':'XMLHttpRequest'
   }
m=MultipartEncoder(
  fields={
    "parent_dir":'/',
    "name":'file',
    "filename":'abc.txt',
    'file':('abc.txt',open('abc.txt','rb'),'text/plain')
  }
)
headers['Content-Type']=m.content_type
response=s.post(u3,headers=headers,data=m,timeout=20)
print response.content

 python实现发送form-data数据的方法详解

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python判断文件和文件夹是否存在的方法
May 21 Python
Python实现对象转换为xml的方法示例
Jun 08 Python
使用Python实现在Windows下安装Django
Oct 17 Python
python读取word文档,插入mysql数据库的示例代码
Nov 07 Python
详解配置Django的Celery异步之路踩坑
Nov 25 Python
Python字典对象实现原理详解
Jul 01 Python
python自带tkinter库实现棋盘覆盖图形界面
Jul 17 Python
Win10系统下安装labelme及json文件批量转化方法
Jul 30 Python
python实现银行管理系统
Oct 25 Python
Python配置pip国内镜像源的实现
Aug 20 Python
python xlwt模块的使用解析
Apr 13 Python
基于Python的EasyGUI学习实践
May 07 Python
PyCharm更改字体和界面样式的方法步骤
Sep 27 #Python
Pycharm 字体大小调整设置的方法实现
Sep 27 #Python
python3 写一个WAV音频文件播放器的代码
Sep 27 #Python
简单瞅瞅Python vars()内置函数的实现
Sep 27 #Python
Python 获取项目根路径的代码
Sep 27 #Python
Python Pandas对缺失值的处理方法
Sep 27 #Python
Python 可变类型和不可变类型及引用过程解析
Sep 27 #Python
You might like
PHP小程序自动提交到自助友情连接
2009/11/24 PHP
CURL的学习和应用(附多线程实现)
2013/06/03 PHP
php登陆页的密码处理方式分享
2013/10/14 PHP
去除php注释和去除空格函数分享
2014/03/13 PHP
PHP回调函数概念与用法实例分析
2017/11/03 PHP
jquery中插件实现自动添加用户的具体代码
2013/11/15 Javascript
js substring从右边获取指定长度字符串(示例代码)
2013/12/23 Javascript
js如何获取object类型里的键值
2014/02/18 Javascript
javascript的解析执行顺序在各个浏览器中的不同
2014/03/17 Javascript
confirm的用法示例用于按钮操作时确定是否执行
2014/06/19 Javascript
jQuery层动画定位滑动效果的方法
2015/04/30 Javascript
使用postMesssage()实现iframe跨域页面间的信息传递
2016/03/29 Javascript
js判断登陆用户名及密码是否为空的简单实例
2016/05/16 Javascript
jQuery基于BootStrap样式实现无限极地区联动
2016/08/26 Javascript
EasyUI 中combotree 默认不能选择父节点的实现方法
2016/11/07 Javascript
利用jQuery解析获取JSON数据
2017/04/08 jQuery
原生js实现密码输入框值的显示隐藏
2017/07/17 Javascript
简易Vue评论框架的实现(父组件的实现)
2018/01/08 Javascript
nodejs分离html文件里面的js和css的方法
2019/04/09 NodeJs
使用 Vue cli 3.0 构建自定义组件库的方法
2019/04/30 Javascript
javascript的this关键字详解
2019/05/20 Javascript
Android 自定义view仿微信相机单击拍照长按录视频按钮
2019/07/19 Javascript
vue tab滚动到一定高度,固定在顶部,点击tab切换不同的内容操作
2020/07/22 Javascript
JavaScript实现拖动对话框效果的实现代码
2020/10/12 Javascript
antd design table更改某行数据的样式操作
2020/10/31 Javascript
Python数据分析之双色球统计两个红和蓝球哪组合比例高的方法
2018/02/03 Python
Python干货:分享Python绘制六种可视化图表
2018/08/27 Python
python设置环境变量的作用和实例
2019/07/09 Python
python3的UnicodeDecodeError解决方法
2019/12/20 Python
花园仓库建筑:Garden Buildings Direct
2018/02/16 全球购物
大学生饮食连锁店创业计划书
2014/01/17 职场文书
2014各大专业毕业生自我评价
2014/09/17 职场文书
单位同意报考证明
2015/06/17 职场文书
运动会班级前导词
2015/07/20 职场文书
超级实用的公文标题大全!
2019/07/19 职场文书
oracle表分区的概念及操作
2021/04/24 Oracle