J'essaie d'itérer les soumissions d'un certain sous-crédit du plus récent au plus ancien en utilisant PRAW. Je le faisais comme ça:
subreddit = reddit.subreddit('LandscapePhotography')
for submission in subreddit.submissions(None, time.time()):
print("Submission Title: {}".format(submission.title))
Cependant, lorsque j'essaie de le faire maintenant, j'obtiens l'erreur suivante:
AttributeError: 'Subreddit' object has no attribute 'submissions'
En regardant les documents, je n'arrive pas à comprendre comment faire cela. Le mieux que je puisse faire est:
for submission in subreddit.new(limit=None):
print("Submission Title: {}".format(submission.title))
Cependant, cela est limité aux 1 000 premières soumissions uniquement.
Existe-t-il un moyen de le faire avec toutes les soumissions et pas seulement avec les 1000 premiers?
Vous pouvez récupérer toutes les données de pushshift.io à l'aide d'une boucle itérative. Définissez simplement la date de début comme la date de l'époque actuelle et obtenez 1000 éléments, puis placez le created_utc des derniers éléments de la liste comme paramètre avant pour obtenir les 1000 éléments suivants et continue jusqu'à ce qu'il cesse de revenir.
Vous trouverez ci-dessous un lien utile pour plus d'informations: https://www.reddit.com/r/pushshift/comments/b7onr6/max_number_of_results_returned_per_query/entrez la description du lien ici
Pushshift ne fonctionne pas pour les subreddits privés. Dans ce cas, vous pouvez désormais créer une base de données 1000 soumissions à la fois (pas rétroactif).
Si vous avez juste besoin d'autant de soumissions que possible, vous pouvez essayer d'utiliser les différentes méthodes de tri top, hot, new et combinez-les.