urllib.urlretrieve загружает пустые zip-файлы

Я пытаюсь скачать экспорт пространства в ZIP-файл. Но почему-то python скачивает пустой и поврежденный zip-файл. Когда вы загружаете руководство по файлу через браузер, все в порядке.

Я использую Python 2.7.13

#!/usr/bin/python
import xmlrpclib
import time
import urllib

confluencesite = "https://confluence.com"
server = xmlrpclib.ServerProxy(confluencesite + '/rpc/xmlrpc')
username = '*'
password = '*'
token = server.confluence2.login(username, password)
loginString = "?os_username=" + username + "&os_password=" + password
filelist = ""
start = True
spacesummary = server.confluence2.getSpaces(token)
for space in spacesummary:
    #if space['name'] == "24-codING":
    #    start = True
    #    continue
    if start:
        if space['type'] == 'global':
            print "Exporting space " + space['name']
            spaceDownloadUrl = server.confluence2.exportSpace(token, space['key'],
                                                              "TYPE_XML",
                                                              exportAll['true'])
            filename = spaceDownloadUrl.split('/')[-1].split('#')[0].split('?')[0]
            time.sleep(0.5)
            urllib.urlretrieve(spaceDownloadUrl + loginString, filename)
            print filename + " saved."
            f = open("exportedspaces.txt", 'a')
            f.write(filename + "\n")
            f.close()

1 ответ

Это решается ответом Coldspeed. Меняется следующее:

loginString = "?os_username=" + username + "&os_password=" + password
to
loginString = "?os_username=" + username + "&os_password=" + password
Другие вопросы по тегам