2011-03-25 7 views
1

次のコードエラーは、BLOBオブジェクト

for h in hits: 
    urls.append(h['url']) 
    result = db.Blob(urlfetch.Fetch(h['url']).content) 
    model.image = result 

を割り当てるしようとしたとき

cannot concatenate 'str' and 'NoneType' objects.

+0

完全なトレースバックをお願いします。 – delnan

+0

そして完全なコード! –

答えて

0

urlfetch.Fetch(h['url']).contentも何かを返しているかどうかを調べるために、いくつかのデバッグプリントを使用してエラーを返します。エラーに基づいて、結果はNoneであり、db.Blob()は結果が文字列であると予想しています。

場合は、適用する前にcontentの値をチェックして計画します。そして、おそらく、良い測定のための小さなエラー追跡?

urls.append(h['url'])

エラーによって判断:私はこれだけの行に連結を参照

errors = [] 
for h in hits: 
    urls.append(h['url']) 
    content = urlfetch.Fetch(h['url']).content 
    if content is not None: 
     result = db.Blob(urlfetch.Fetch(h['url']).content) 
    else: 
     print 'No content for', h['url'] 
     errors.append(h) 
     continue 

    model.image = result 
0

:ここ

は簡単な例ですURLのだろう '文字列'、および 'NoneType' になりますh ['url'] おそらくh ['url']は空です。これをコンソールに印刷して確認してください。

+0

Pythonの文字列には 'append'メソッドがありません。' urls'は明らかにリストであることを意図しています。 –

関連する問題