Я пытаюсь получить все комментарии, оставленные для просмотра. Я могу получить комментарии верхнего уровня с помощью функции commentThreads (). List (), но мне нужно получить ответы на комментарии верхнего уровня, которые хранятся для просмотра. Я использовал метод comments (). List (), чтобы получить ответы на комментарии верхнего уровня. Я могу получить ответы, но все они были опубликованы комментарии. Ни один из комментариев, оставленных для обзора, не был найден, что вызывает недоумение. Это так и должно быть? Мне не нужны опубликованные комментарии, мне просто нужны те, которые находятся на рассмотрении. Я пытался запросить комментарии, предназначенные для проверки, но получал следующую ошибку:
mod = item['snippet']['moderationStatus']
KeyError: 'moderationStatus'
Не уверен, что нужно сделать, чтобы получить ссылки, удерживаемые для проверки.
def get_comments(service, parent_id, threadId, comments):
results = service.comments().list(
part = "snippet, id",
parentId = parent_id,
textFormat = "plainText"
).execute()
for item in results['items']:
cid = item['id']
text = item['snippet']['textDisplay']
mod = item['snippet']['moderationStatus']
# ^ The line above generates an error: KeyError: 'moderationStatus'
# If I delete the "mod =..." and the "if mod !=..." lines, I get all
# of the replies to the top-level comment (parentId) that have been
# published but none of the ones that are held for review.
if mod != "heldForReview":
comments.append([text, cid])
return comments