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实现倒计时的示例
Feb 14 Python
python实现数通设备tftp备份配置文件示例
Apr 02 Python
Python内置的HTTP协议服务器SimpleHTTPServer使用指南
Mar 30 Python
Python 基础教程之str和repr的详解
Aug 20 Python
R vs. Python 数据分析中谁与争锋?
Oct 18 Python
python中web框架的自定义创建
Sep 08 Python
Python函数式编程指南:对生成器全面讲解
Nov 19 Python
Python魔法方法 容器部方法详解
Jan 02 Python
python3:excel操作之读取数据并返回字典 + 写入的案例
Sep 01 Python
Python自定义sorted排序实现方法详解
Sep 18 Python
Python自动化测试PO模型封装过程详解
Jun 22 Python
彻底弄懂Python中的回调函数(callback)
Jun 25 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
一个简单的MySQL数据浏览器
2006/10/09 PHP
快速配置PHPMyAdmin方法
2008/06/05 PHP
关于PHP的curl开启问题探讨
2014/04/08 PHP
WordPress中转义HTML与过滤链接的相关PHP函数使用解析
2015/12/22 PHP
关于javascript DOM事件模型的两件事
2010/07/22 Javascript
jQuery仿gmail实现fixed布局的方法
2015/05/27 Javascript
每天一篇javascript学习小结(Boolean对象)
2015/11/12 Javascript
JavaScript tab选项卡插件实例代码
2016/02/23 Javascript
JavaScript 链式结构序列化详解
2016/09/30 Javascript
AngularJS入门教程之表单校验用法示例
2016/11/02 Javascript
Ajax的概述与实现过程
2016/11/18 Javascript
AngularJS实用基础知识_入门必备篇(推荐)
2017/07/10 Javascript
详解Vue.js组件可复用性的混合(mixin)方式和自定义指令
2017/09/06 Javascript
微信小程序支付及退款流程详解
2017/11/30 Javascript
layui自定义ajax左侧三级菜单
2019/07/26 Javascript
JavaScript ECMA-262-3 深入解析(一):执行上下文实例分析
2020/04/25 Javascript
vue二选一tab栏切换新做法实现
2021/01/19 Vue.js
在Python 3中实现类型检查器的简单方法
2015/07/03 Python
常见python正则用法的简单实例
2016/06/21 Python
Ubuntu下Python2与Python3的共存问题
2018/10/31 Python
基于Python在MacOS上安装robotframework-ride
2018/12/28 Python
tensor和numpy的互相转换的实现示例
2019/08/02 Python
Python求解正态分布置信区间教程
2019/11/20 Python
Django 用户登陆访问限制实例 @login_required
2020/05/13 Python
基于Python词云分析政府工作报告关键词
2020/06/02 Python
pytorch SENet实现案例
2020/06/24 Python
Python+Dlib+Opencv实现人脸采集并表情判别功能的代码
2020/07/01 Python
Bench加拿大官方网站:英国城市服装品牌
2017/11/03 全球购物
百日安全活动总结
2014/05/04 职场文书
某某同志考察材料
2014/05/28 职场文书
重点工程汇报材料
2014/08/27 职场文书
党支部党的群众路线对照检查材料
2014/09/24 职场文书
常务副县长“四风”个人对照检查材料思想汇报
2014/10/02 职场文书
SQL Server数据定义——模式与基本表操作
2021/04/05 SQL Server
详解JS WebSocket断开原因和心跳机制
2021/05/07 Javascript
利用python实时刷新基金估值(摸鱼小工具)
2021/09/15 Python