python实现发送form-data数据的方法详解
本篇章节讲解python实现发送form-data数据的方法。分享给大家供大家参考,具体如下: 源代码
#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,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,data=m,timeout=20) print response.content 更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》 希望本文所述对大家Python程序设计有所帮助。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |