[英]How to fix TypeError: string indices must be integers?
運行代碼時,它顯示此錯誤:
File "E:\python343\crawler.py", line 36, in <module>
if(x2['type']=='status'):
TypeError: string indices must be integers
這是代碼:
#PRINTING YOUR FRIEND ALL "favorite_teams"
fs = g.get_object("me/friends")
for f in fs['data']:
#print f
#print f['name'],f['id']
print (f['name'])
for x in g.get_object(f['id'])['favorite_teams']:
print (x['name'])
#SEACHING TOP 10 PAGE ON INPUTTING PAGE NAME AND OUTPUT AS PAGE ID
x= g.request('search', {'q' : 'TaylorSwift', 'type' : 'page', 'limit' : 1000})['data'][0]['id']
non_bmp_map = dict.fromkeys(range(0x10000, sys.maxunicode + 1), 0xfffd)
#GET ALL STATUS POST ON PARTICULAR PAGE(X=PAGE ID)
for x1 in g.get_connections(x, 'feed')['data']:
print (str(x1).translate(non_bmp_map))
for x2 in x1:
print (str(x2).translate(non_bmp_map))
if(x2['type']=='status'):
x2['message']
那么如何使用x2['type']
來修復錯誤呢?
希望得到您的幫助,謝謝。
x2是一個字符串,而不是響應對象。 繞過它,在其他情況下檢查x2:
if isinstance(x2, dict):
if(x2['type']=='status'):
x2['message']
else:
# examine the data
print 'Unexpected data:', type(x2), x2
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.