【发布时间】:2014-10-05 21:46:15
【问题描述】:
在 setup.py 中,我指定 package_data 如下:
packages=['londontweetgrabber'],
package_dir={'londontweetgrabber': 'londontweetgrabber'},
package_data={'londontweetgrabber': ['data/data.db']},
我的目录层次大致如下:
londontweetgrabber/
|
| docs/
| ...
| londontweetgrabber/
|
| __init__.py
| authentication.py
| data
|
| data.db
|
| README
| setup.py
我想做的是使用 sqlite3 将文件加载到 data.db 中。尝试在这里找到的解决方案的变体 (How do I use data in package_data from source code?) 我可以验证现在正在加载数据,但是 sqlite 抱怨我知道的表不存在。我希望这个 data.db 文件与我正在编写的 python 包一起分发,因为我依赖它来完成我想做的事情。
我目前用于加载和未能加载 sqlite 的代码:
import sqlite3
import pkgutil
def get_conn():
data = pkgutil.get_data('londontweetgrabber', 'data/data.db')
print data
return sqlite3.connect(data)
谢谢
【问题讨论】:
标签: python build setuptools distribute