擅长:python、mysql、java
<p>我很确定<code>DeadlockWrap</code>的东西与这里无关。这只是<a href="http://epydoc.sourceforge.net/stdlib/bsddb.dbutils-module.html#DeadlockWrap" rel="nofollow noreferrer">automagically provide retries with a back-off strategy</a>的一种方法。换言之,如果数据库操作失败,它会等待一段时间,然后再次尝试,在最终失败之前会多次尝试。在</p>
<p>您似乎正在从字典<code>get</code>操作中获取<code>KeyError</code>,这很可能是因为您所使用的密钥实际上并不存在于数据库中。在</p>
<p>尝试使用以下代码:</p>
<pre><code>try:
key = 'scrape011201-590652'
if not contentdict.has_key(key):
print "Urk!, No record for %s"%(key)
contenttext = contentdict[key]
except:
print the error
</code></pre>
<p>如果表中不存在该记录,这将显示您(通过输出<code>Urk!</code>消息)。至于你在这种情况下要做什么,这取决于你的架构。您可能希望返回<code>None</code>或空字符串。你可能还想做你现在正在做的事情(引发一个异常)。在</p>