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下载文件时显示下载进度的方法
Apr 02 Python
Python编程之多态用法实例详解
May 19 Python
总结python实现父类调用两种方法的不同
Jan 15 Python
python+opencv实现的简单人脸识别代码示例
Nov 14 Python
Python中max函数用于二维列表的实例
Apr 03 Python
将tensorflow的ckpt模型存储为npy的实例
Jul 09 Python
python实现读取类别频数数据画水平条形图案例
Apr 24 Python
解决django migrate报错ORA-02000: missing ALWAYS keyword
Jul 02 Python
python代码能做成软件吗
Jul 24 Python
python如何利用Mitmproxy抓包
Oct 10 Python
Python 利用flask搭建一个共享服务器的步骤
Dec 05 Python
python-opencv 中值滤波{cv2.medianBlur(src, ksize)}的用法
Jun 05 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
风味层面去分析咖啡油脂
2021/03/03 咖啡文化
解析百度搜索结果link?url=参数分析 (全)
2012/10/09 PHP
phpmailer绑定邮箱的实现方法
2016/12/01 PHP
二级域名转向类
2006/11/09 Javascript
图片连续滚动代码[兼容IE/firefox]
2009/06/11 Javascript
Javascript的并行运算实现代码
2010/11/19 Javascript
javascript中有趣的反柯里化深入分析
2012/12/05 Javascript
node.js开发中使用Node Supervisor实现监测文件修改并自动重启应用
2014/11/04 Javascript
angular简介和其特点介绍
2015/01/29 Javascript
由ReactJS的Hello world说开来
2015/07/02 Javascript
IE6兼容透明背景图片及解决方案
2015/08/19 Javascript
jQuery EasyUI Dialog拖不下来如何解决
2015/09/28 Javascript
jQuery实现图片滑动效果
2017/03/08 Javascript
微信小程序登录态控制深入分析
2017/04/12 Javascript
详解Angular2 之 结构型指令
2017/06/21 Javascript
node.js 用socket实现聊天的示例代码
2017/10/17 Javascript
jQuery EasyUI 折叠面板accordion的使用实例(分享)
2017/12/25 jQuery
electron中使用bootstrap的示例代码
2018/11/06 Javascript
详解关于element el-button使用$attrs的一个注意要点
2018/11/09 Javascript
swiper4实现移动端导航切换
2020/10/16 Javascript
JS中封装axios来管控api的2种方式
2019/09/11 Javascript
jQuery弹框插件使用方法详解
2020/05/26 jQuery
在vue中使用Echarts画曲线图的示例
2020/10/03 Javascript
python概率计算器实例分析
2015/03/25 Python
Python Sqlite3以字典形式返回查询结果的实现方法
2016/10/03 Python
python绘制简单彩虹图
2018/11/19 Python
python编写微信公众号首图思路详解
2019/12/13 Python
python机器学习库xgboost的使用
2020/01/20 Python
利用python实现凯撒密码加解密功能
2020/03/31 Python
python自动化测试三部曲之unittest框架的实现
2020/10/07 Python
使用CSS3来匹配横屏竖屏的简单方法
2015/08/04 HTML / CSS
美国杂志订阅折扣与优惠网站:Magazines.com
2016/08/31 全球购物
allbeauty美国:英国在线美容店
2019/03/11 全球购物
戴森香港官方网站:Dyson香港
2021/02/11 全球购物
校庆筹备方案
2014/03/30 职场文书
2014年学生会工作总结范文
2014/11/07 职场文书