我正在运行Scrapy项目,我正在寻找在本地存储已经删除的数据的最佳方法。目前我正在使用AnyDBM
,但在运行一段时间后我仍然收到以下错误:
bsddb.db.DBRunRecoveryError: (-30973, 'DB_RUNRECOVERY: Fatal error, run database recovery -- PANIC: fatal region error detected; run recovery')
我做错了,因为我对Python很陌生,但我想知道除了Anydbm之外是否有更好的解决方案。
我正在存储我已抓取的网页的数字ID,并将存储大约500,000条记录,并计划为将来的项目提供3-4百万条记录。
AnyDBM是我应该坚持的,还是应该改为更适合这项工作的东西。
答案 0 :(得分:1)
看起来非常适合sqlite
,已经是Python标准库的一部分。
答案 1 :(得分:1)
默认情况下,python附带sqlite3
,这是一个非常好的数据库系统。
这是一个pretty good tutorial。要将表格放入内存使用:
conn = sqlite3.connect(":memory:")
conn.isolation_level = None
cur = conn.cursor()