2012-10-01 60 views
1

所以我尝试在远程设备上上传文件。在Python中更改内容类型

如果我使用代码:

#!/usr/bin/python 

import httplib 
import urllib2 
from poster.encode import multipart_encode 
from poster.streaminghttp import register_openers 
import poster 
register_openers() 

params = {'restore': open("Config.cfg", "rb"), 'upload': 'PC ==>; Unit'} 

datagen, headers = multipart_encode(params) 

request = urllib2.Request('http://www.test.com/saveRestore.htm.cgi', datagen, headers) 
u = urllib2.urlopen(request) 
print u.read() 

文件上传与内容类型text/plain的..

那么如何改变这种内容类型,例如为text/html ?

+0

可能重复[如何更改内容类型的Python(http://stackoverflow.com/questions/12673580/how-to-change-content型的Python) –

回答

4

地址:

headers['Content-Type'] = 'text/html'

之前实例化Request对象。

1

您可以使用从蟒蛇机械化的lib:

import mechanize 
b = mechanize.Browser() 

# Set any header you like: 
b.addheaders = [('Content-Typoe', 'text/html; charset=utf-8')] 
response = b.open('http://www.reddit.com') 
data = response.read()