前提・実現したいこと
YouTubeのコメントを取得するシステム作成中のエラーメッセージ(参考記事あり)
発生している問題・エラーメッセージ
Traceback (most recent call last): File "/home/ubuntu/environment/youtube.py", line 30, in <module> print_video_comment(video_id, n=5) File "/home/ubuntu/environment/youtube.py", line 17, in print_video_comment resource = response.json() File "/home/ubuntu/.pyenv/versions/3.8.3/lib/python3.8/site-packages/requests/models.py", line 900, in json return complexjson.loads(self.text, **kwargs) File "/home/ubuntu/.pyenv/versions/3.8.3/lib/python3.8/json/__init__.py", line 357, in loads return _default_decoder.decode(s) File "/home/ubuntu/.pyenv/versions/3.8.3/lib/python3.8/json/decoder.py", line 337, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "/home/ubuntu/.pyenv/versions/3.8.3/lib/python3.8/json/decoder.py", line 355, in raw_decode raise JSONDecodeError("Expecting value", s, err.value) from None json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) Process exited with code: 0
該当のソースコード
python import requests import json URL = 'https://www.youtube.com/watch?v=OfZ58k3LvyQ' #適当な動画のURL API_KEY = '#自分のAPIキー' def print_video_comment(video_id, n=10): params = { 'key': API_KEY, 'part': 'snippet', 'videoId': video_id, 'order': 'relevance', 'textFormat': 'plaintext', 'maxResults': n, } response = requests.get(URL + 'commentThreads', params=params) resource = response.json() for comment_info in resource['items']: # コメント text = comment_info['snippet']['topLevelComment']['snippet']['textDisplay'] # グッド数 like_cnt = comment_info['snippet']['topLevelComment']['snippet']['likeCount'] # 返信数 reply_cnt = comment_info['snippet']['totalReplyCount'] print('{}\nグッド数: {} 返信数: {}\n'.format(text, like_cnt, reply_cnt)) video_id = 'hoge' print_video_comment(video_id, n=5)
試したこと
●import requestsが正常にインストールされていることを確認
●requests などのモジュールの格納先と、pythonが確認するパスの一致を確認
●レスポンスがjson形式になっていることを確認
補足情報(FW/ツールのバージョンなど)
参考にした記事のURL
https://qiita.com/Doarakko/items/191209bf14cf5d76fa6f
macOS, python3.8.5, jupyter
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/02/07 11:32