python实现发送form-data数据的方法详解
本文实例讲述了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 = 'xxxxx', 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@xxxxx.com' password='newja01' myurl='http://xxxx: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://xxxx: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://xxxx: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://xxxx: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相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。
相关文章
python 代码实现k-means聚类分析的思路(不使用现成聚类库)
这篇文章主要介绍了python 代码实现k-means聚类分析(不使用现成聚类库),本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-06-06解决django-xadmin列表页filter关联对象搜索问题
今天小编就为大家分享一篇解决django-xadmin列表页filter关联对象搜索问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2019-11-11
最新评论