抓取PDF并将其上传到Django中的S3



我正在尝试从网站抓取PDF并将其上传到S3存储桶。 我有一个工作抓取器,可以使用 beautifulsoup4 在本地成功下载文件,以及一个使用 Boto 将文件上传到 S3 的工作脚本。 我遇到的问题是跳过本地下载它的中间步骤并将其直接下载到 S3 的方法。

抓取和上传到 S3 之间是否有良好的接口?

我用这个函数实现了我的目标:

from StringIO import StringIO
from urllib2 import Request, urlopen
from boto.s3.connection import S3Connection, Bucket, Key
def scrape_to_s3(filename, origin_url):
remote_file = urlopen(Request(origin_url)).read()
memory_file = StringIO(remote_file)

conn = S3Connection(settings.AWS_ACCESS_KEY_ID, settings.AWS_SECRET_ACCESS_KEY)
bucket = conn.get_bucket(settings.AWS_STORAGE_BUCKET_NAME)
k = Key(bucket)
k.key = "media/" + filename
k.set_contents_from_file(memory_file)

最新更新