0

用于 python 的 Urllib 在上传文件时似乎非常慢(使用 multipart/form-data)

浏览器(Chrome)在 20 秒内完成,而脚本使用几乎 i 分钟来处理同一个文件。

我使用 urllib2 进行连接,并使用海报创建 http 标头和数据,相关的 python 版本是 2.7。

def upSong(fileName):
    datagen, headers = multipart_encode({"mumuregularfile_0": open(fileName, "rb")})

    uploadID = math.floor(random.random()*1000000)
    request = urllib2.Request("http://upload0.mumuplayer.com:443/?browserID=" + browserID + "&browserUploadID=" + str(uploadID), datagen, headers)

    urllib2.urlopen(request).read()

有没有办法加快 pythons/urllibs 连接,或者这只是 python 语言的限制?

编辑:应该注意我已经测试了所有部分,毫无疑问是 urllib.read()

4

2 回答 2

1

Chromium 可能使用了压缩(如果网站支持),而 urllib 看起来不像使用它(grepping "gz" 或 "bz" 没有结果)。

我不确定,但 Chromium 也可能比传统连接更优化,使用套接字黑客或其他东西......

于 2012-06-09T17:39:29.850 回答
0

您可以在行后添加一些时间报告功能。通过这一点,您可以确定哪个步骤正在降低速度或花费更长的时间。它也可能因网络速度而异...

于 2012-06-09T17:52:54.717 回答