0

わかりましたので、すべての意図と目的のために、機能するはずのコードをいくつか書きました。

def checkComments(comments):
  for comment in comments:
    print comment.body
    checkComments(comment.replies)

def processSub(sub):
  sub.replace_more_comments(limit=None, threshold=0)
  checkComments(sub.comments)


#login and subreddit init stuff here
subs = mysubreddit.get_hot(limit=25)
for sub in subs:
  processSub(sub)

ただし、次のように 50 個のネストされた返信があるコメント付きの送信があるとします。

root comment
-> 1st reply
   -> 2nd reply
      -> 3rd reply
         ...
           -> 50th reply

上記のコードは以下のみを表示します:

root comment
1st reply
2nd reply
3rd reply
4th reply
5th reply
6th reply
7th reply
8th reply
9th reply

残りの 41 レベルの返信を取得する方法を教えてください。それとも、これはエビの制限ですか?

4

1 に答える 1

3

まずlimit、結果の深さではなく、結果の数を制限します。

しかし、それはここでは問題ではありませんmorecomments。reddit API のエンドポイントは、深くネストされたコメントに対して間違った結果を返すようです。

技術的な詳細については、バグ レポート #321を参照してください。

于 2014-08-20T15:36:20.100 に答える