problema de envio de arquivo python urllib2

Quero postar um arquivo em um servidor via python, para isso, preciso nomear esse arquivo como "xmlfile" para que o servidor reconheça a entrada.

import urllib2

url = "http://somedomain"
to_send = open('test.xml').read()
data = {}
data['xmlfile'] = to_send
f = urllib2.urlopen(url, data)

Além disso, isso não funciona, como posso recuperar a resposta e salvar em algum lugar?

Em outras palavras, quero executar a ação como faço com o Curl:

curl.exe http://somedomain -F [email protected] -o response.html

questionAnswers(2)

yourAnswerToTheQuestion