我的代码:
csv = pd.read_html(table)[0].to_csv('datasource_files/testtable7.csv',index=False,header=False)
conn = tinys3.Connection(settings.AWS_ACCESS_KEY_ID, settings.AWS_SECRET_ACCESS_KEY,endpoint='s3-us-west-2.amazonaws.com/')
csv_file=open('datasource_files/testtable7.csv')
csv_file=open('datasource_files/testtable7.csv','rb')
csv_name= 'datasource_files/testtable7.csv'
conn.upload(csv_name,csv_file,'datafix1')
ds = DataSource.objects.create(file=csv_name,datatype="CSV",creator=mike, title="title",description="desc")
DataSource是Django模型,文件是models.FileField()。当前,ds.file是http://datafix1.s3-us-west-2.amazonaws.com/datasource_files/testtable7.csv,但该文件不存在。为了访问上传的文件,我需要转到http://datafix1.s3-us-west-2.amazonaws.com//datasource_files/testtable7.csv(在路径名的开头附加一个空目录,因为tinys3无法识别已经存在的(重要)“ datasource_files”文件夹(至少我相信是这个原因,我可能错了。任何人都可以帮忙吗?
最佳答案
我改用boto3,像个吊饰