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脚本判断 Linux 是否运行在虚拟机上
Apr 25 Python
Python 常用string函数详解
May 30 Python
Python3.5.3下配置opencv3.2.0的操作方法
Apr 02 Python
Python使用numpy模块创建数组操作示例
Jun 20 Python
Python Requests库基本用法示例
Aug 20 Python
python实现的config文件读写功能示例
Sep 24 Python
解决TensorFlow模型恢复报错的问题
Feb 06 Python
Python运行异常管理解决方案
Mar 09 Python
python中pandas库中DataFrame对行和列的操作使用方法示例
Jun 14 Python
在pycharm中使用pipenv创建虚拟环境和安装django的详细教程
Nov 30 Python
详解Python爬虫爬取博客园问题列表所有的问题
Jan 18 Python
python中用ggplot绘制画图实例讲解
Jan 26 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
深入了解php4(2)--重访过去
2006/10/09 PHP
php更新修改excel中的内容实例代码
2014/02/26 PHP
PHP+redis实现的悲观锁机制示例
2018/06/12 PHP
ThinkPHP5.0多个文件上传后找不到临时文件的修改方法
2018/07/30 PHP
PHP日期和时间函数的使用示例详解
2020/08/06 PHP
javascript 火狐(firefox)不显示本地图片问题解决
2008/07/05 Javascript
jQuery 页面载入进度条实现代码
2009/02/08 Javascript
基于jquery的web页面日期格式化插件
2011/11/15 Javascript
jQuery实现ichat在线客服插件
2014/12/29 Javascript
jQuery检查事件是否触发的方法
2015/06/26 Javascript
jQuery实现图片轮播特效代码分享
2015/09/15 Javascript
使用jquery+CSS3实现仿windows10开始菜单的下拉导航菜单特效
2015/09/24 Javascript
window.onload绑定多个事件的两种解决方案
2016/05/15 Javascript
JS实现显示带倒影的图片横排居中放大展示特效实例【测试可用】
2016/08/23 Javascript
Javascript 高性能之递归,迭代,查表法详解及实例
2017/01/08 Javascript
详解React中setState回调函数
2018/06/14 Javascript
vue实现分页组件
2020/06/16 Javascript
ES6 Class中实现私有属性的一些方法总结
2019/07/08 Javascript
vue路由 遍历生成复数router-link的例子
2019/10/30 Javascript
js仿360开机效果
2019/12/26 Javascript
Python+matplotlib实现计算两个信号的交叉谱密度实例
2018/01/08 Python
Pandas标记删除重复记录的方法
2018/04/08 Python
python给微信好友定时推送消息的示例
2019/02/20 Python
Tensorflow中的降维函数tf.reduce_*使用总结
2020/04/20 Python
Python应用实现处理excel数据过程解析
2020/06/19 Python
python如何绘制疫情图
2020/09/16 Python
劳动模范事迹材料
2014/01/19 职场文书
《赠汪伦》教学反思
2014/04/12 职场文书
培训讲师岗位职责
2014/04/13 职场文书
幼儿园爱国卫生月活动总结
2014/06/30 职场文书
机动车登记业务委托书
2014/10/08 职场文书
青年岗位能手事迹材料
2014/12/23 职场文书
出生证明格式
2015/06/15 职场文书
中考百日冲刺决心书
2015/09/22 职场文书
2016新教师培训心得体会范文
2016/01/08 职场文书
Python连接Postgres/Mysql/Mongo数据库基本操作大全
2021/06/29 Python