画像認識を行うAIを作成しようとしています。
flickrから画像を取得しようとしているのですが以下のようなエラーコードが出てしまいます。
31行目のphotos = result['photos']のところでエラーが出ます。
byte indices must be integers or slices, not str
ソースコードはこちらです。
python
1#保存フォルダの指定 2actress_name = sys.argv[1] 3savedir = "./" + actress_name 4 5flickr = FlickrAPI(key, secret, format='parsed_json') 6result = flickr.photos.search( 7 text = actress_name, 8 per_page =200, 9 media = 'photos', 10 sort = 'relevance', 11 safe_search = 1, 12 extras = 'url_q, licence' 13 14) 15 16photos = result['photos'] 17 18pprint(photos)
ググったりコードをいじったりしましたが、どうしても治りません。
どうか解決方法を教えてください。
よろしくお願いします。
ソースコードはマークダウンを利用してcode欄に書きましょう
すみません、編集しました。ご回答よろしくお願いいたします。
resultにまともな情報が入ってないのでは?
pprint(result) #resultの中身は?
photos = result['photos']
とすると、何がでるのでしょう?
(b'<?xml version="1.0" encoding="utf-8" ?>\n<rsp stat="fail">\n\t<err code="11'
b'1" msg="Format "parsed_json" not found" />\n</rsp>\n')
Traceback (most recent call last):
File "download.py", line 30, in <module>
photos = result['photos']
TypeError: byte indices must be integers or slices, not str
こうなります
お疲れ様です。
resultの内容が、[`photos`]とかで、処理できそうな内容じゃないですよね。
jsonみたいなのを期待されているのだと思いますが、
今のエラー部位以前のところがうまくいってない気がします。
別の方が回答のほうに記載されているように、エラー自体は、
bytesに[`photos`]と言われても、、、
というエラーですが。。。
resultにちゃんとした値が入れば、そこは、自動的にエラーじゃなくなると思います。
parsed_jsonじゃなくてparsed-jsonでした!

回答1件
あなたの回答
tips
プレビュー