Python GAE dev_appserver.py不是';t在本地下载完整文件
我在本地应用程序引擎服务器上发现了奇怪的行为 基本上,我使用以下代码下载文件:Python GAE dev_appserver.py不是';t在本地下载完整文件,python,google-app-engine,Python,Google App Engine,我在本地应用程序引擎服务器上发现了奇怪的行为 基本上,我使用以下代码下载文件: startDownloadTime = datetime.datetime.now() logging.info("Download Start Time: "+startDownloadTime.strftime("%H:%M.%S")) url = '[URL]' logging.info("Starting download") r = requests.get(url)
startDownloadTime = datetime.datetime.now()
logging.info("Download Start Time: "+startDownloadTime.strftime("%H:%M.%S"))
url = '[URL]'
logging.info("Starting download")
r = requests.get(url)
logging.info("Download complete")
bucket = '/dbdumps'
filename = bucket + '/dbdumps_'+datetime.datetime.today().strftime('%Y-%m-%d')+'.zip'
gcs_file = gcs.open(filename,'w',content_type='application/zip')
gcs_file.write(r.content)
gcs_file.close()
logging.info("Done downloading zip file. Finish time: "+datetime.datetime.now().strftime("%H:%M.%S"))
它看起来很简单,可以在生产服务器上使用。我知道我正在下载的文件应该是~150mb,但出于任何原因,requests.get(url)
只获取/创建了一个~33.5mb大小的文件
有什么想法吗 如果时间超过60秒,则会失败。urlfetch请求的最大响应时间为60秒,并且仅当您将超时设置为60秒时。默认情况下,它是10秒(从内存)。假设每次下载失败的长度大致相同,我猜这是你的问题,这是正确的——我看到的失败是由于达到了urlfetch的32mb限制。移动到请求并使用套接字修复了问题。啊,忘记了请求大小;-)