2013-10-07 1 views
0

Когда я выкладываю данные из файлаPython после urlencoded из файла

headers = {'content-type': 'text/plain'} 
files = {'Content': open(os.getcwd()+'\\1.txt', 'rb')} 

contentR = requests.post("http://" + domain +"index.php", params=payload, data=files, headers=headers) 

я получаю что-то вроде urlencoded строки

Content=%3C%3Fphp+echo%28%22Hello+world%22+%29%3B+%3F%3E 

вместо

<?php echo("Hello world"); ?> 

Как размещать данные в виде находится в текстовом файле?

ответ

2

Если вы читали docs внимательно, вы можете использовать файл объекта:

headers = {'content-type': 'text/plain'} 
file = open(os.getcwd()+'\\1.txt', 'rb') 

contentR = requests.post("http://" + domain +"index.php", params=payload, data=file, headers=headers) 

Или вы можете просто передать строку с содержимым файлов, как так:

file_contents = open(os.getcwd() + '\\`.txt', 'rb').read() 
contentR = requests.post("http://" + domain +"index.php", params=payload, data=file_contents, headers=headers) 

Если вы передаете словарь всегда будет urlencoded, так что это не то, что вы хотите сделать.

+0

спасибо работы супер !!! –

Смежные вопросы