Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从URL将文件上载到GAE Blobstore_Python_Google App Engine_Blobstore - Fatal编程技术网

Python 从URL将文件上载到GAE Blobstore

Python 从URL将文件上载到GAE Blobstore,python,google-app-engine,blobstore,Python,Google App Engine,Blobstore,我需要从URL获取视频,例如: https://zencoder-temp-storage-us-east-1.s3.amazonaws.com/o/20130722/5aacb76fc3fd47715c0329d1235dcccf/4fc612e92131e159abc761f7d54d86b5.mp4?AWSAccessKeyId=AKIAI456JQ76GBU7FECA&Signature=AGgZb1eMr105RXcoQFp8yFFTfFg%3D&Expires=137

我需要从URL获取视频,例如:

https://zencoder-temp-storage-us-east-1.s3.amazonaws.com/o/20130722/5aacb76fc3fd47715c0329d1235dcccf/4fc612e92131e159abc761f7d54d86b5.mp4?AWSAccessKeyId=AKIAI456JQ76GBU7FECA&Signature=AGgZb1eMr105RXcoQFp8yFFTfFg%3D&Expires=1374614893
然后使用Google App Engine将其保存到blobstore(如果blobstore无法直接从URL下载,则可能使用Google云存储)有没有简单的方法?我已经把它设置好了,这样我可以让用户上传视频,但我不确定这样做。我要找的是图书馆吗

会不会是这样的:

class UploadHandler(blobstore_handlers.BlobstoreUploadHandler):
  def post(self):
    #I'm just not sure what to do here, how I can get that 'file' from a URL
    upload_files = self.get_uploads('file')
    blob_info = upload_files[0]

    video = Video(
        title = "some title",
        video_ref = blob_info.key())
    video.put()

是的,您需要使用urlfetch,然后使用google云存储客户端库()来编写结果。您需要考虑URLFACH响应大小限制为32 MB,因此需要将下载拆分为32 MB块,并且还有60秒的用户请求限制或10分钟TaskQuey限制或不具有超时限制的使用后端。
您也可以直接上传到blobstore或cloudstorage(),这是由专门用于处理这些上传的特殊实例处理的。

什么是“直接上传”以及什么样的特殊实例?上面的示例代码似乎是blobstore处理程序的结果。因此,如果您使用action=blobstore.create_upload_url('/upload')将/upload路由到UploadHandler,那么您将使用这个方法发布到表单。除了blobstore文件大小限制外,这没有超时限制。好吧,我很清楚如何让用户上传视频,我只需要从不同的URL进行上传。是的,唯一的方法是使用云存储客户端或文件api下载和写入,我相信这是不推荐的。我希望云存储客户端支持blobstore。有没有一种方法或一个工作示例来说明如何将Google云存储与JAVA/JAVASCRIPT结合使用,而不是总是使用Python和另一种时间Python?:-)