commands - descargar archivo del servicio web en python 3
python-telegram-bot send message (1)
Veo algunos métodos para descargar un archivo desde HTTP / HTTPS en Python, pero para todos estos debe conocer la URL exacta. Intento descargar desde un servicio web y la URL tiene métodos y mensajes de argumentos que se envían para descargar el archivo. No puedo entender qué debe enviar la URL. Este es el fragmento de código:
url = ''https://www.example123.com''
params = { ''user'' : ''username'', ''pass'' : ''password'', ''method'' : ''getproject'', ''getPDF'' : ''true'' }
data = urllib.parse.urlencode(params)
data = data.encode(''utf-8'')
request= urllib.request.Request(url, data)
response = urllib.request.urlopen(request)
xdata = response.read()
print(xdata)
La declaración impresa parece que está leyendo el PDF, pero quiero guardarlo en algún lugar y no puedo encontrar ninguna forma de hacerlo. Aquí está el comienzo de la respuesta de impresión:
b''%PDF-1.6/r%/xe2/xe3/xcf/xd3/r/n12 0 obj/r<</Lin
Tienes que abrir un archivo y escribir en él. En este momento, solo lo estás almacenando en una variable de cadena.
with open(''yourfile.pdf'', ''w'') as f:
f.write(xdata)