从Excel工作表获取数据

如何将数据从Excel工作表加载到我的Django应用程序中? 我使用数据库PosgreSQL作为数据库。

我想以编程方式做到这一点。 客户希望每周在网站上加载两个不同的列表,他们不想在pipe理部分做这个,他们只是想从Excel工作表加载列表。 请帮忙,因为我在这儿有点新鲜。

看看xlrd包,它允许你用Python读取Excel文件。 读完数据后,您可以随心所欲地执行任何操作,包括将其保存到数据库中。

有关基本用法示例,请参阅http://scienceoss.com/read-excel-files-from-python/

使用django-batchimport http://code.google.com/p/django-batchimport/它提供了一个非常简单的方法来将数据上传到您的Django模型。 我已经在一些项目中使用了它。 它可以很容易地集成到你现有的Django项目中。

阅读项目页面上的文档以了解如何使用它。

它build立在XLRD上。

看一下Chris Withers在PyCon US上给出的演示文稿“Excel&Python”:

“这个闪电讲话解释说,你不需要使用COM或在Windows上读取和写入本机Excel文件。”

http://www.simplistix.co.uk/presentations/python_excel_09/excel-lightning.pdf

编程或手动? 如果是手动的,那么就把excel保存为CSV(带有csv或txt扩展名),然后导入到Postgresql中

 copy the_data from '/path/to/csv/MYFILE.txt' DELIMITERS ',' CSV; 

我记得这一点。 最好的方法是将此表保存为纯文本(CSV或其他)然后加载一些自定义的SQL脚本。 http://www.postgresql.org/docs/8.3/static/populate.html

或者看一下SQLAlchemy,如果你打算写一些脚本来帮助你。( http://www.sqlalchemy.org/

如果你想使用COM来连接excel(即你正在Windows机器上运行),请参阅“将Excel数据迁移到SQLite” – http://www.saltycrane.com/blog/2007/11/migrating-excel-to -SQLite-使用-蟒/

我在xlrd之上build立了django-batchimport,这是令人惊叹的。 我唯一的问题是获取数据到Django。 与xlrd的任何限制无关。 它岩石。 约翰的工作令人难以置信。

请注意,我实际上已经做了一些更新工作,以django-batchimport刚刚发布。 看看: http : //code.google.com/p/django-batchimport/

刚开始使用XLRD,看起来非常简单易用。

请注意,它不支持Excel 2007,所以请记住保存您的Excel 2003格式。