in psaw/PushshiftAPI.py [0:0]
def _praw_search(self, **kwargs):
prefix = self._thing_prefix[kwargs['kind'].title()]
self.payload = copy.deepcopy(kwargs)
client_return_batch = kwargs.get('return_batch')
if client_return_batch is False:
self.payload.pop('return_batch')
if 'filter' in kwargs:
self.payload.pop('filter')
gen = self._search(return_batch=True, filter='id', **self.payload)
using_gsci = False
if kwargs.get('kind') == 'comment' and self.payload.get('submission_id'):
using_gsci = True
gen = [self._get_submission_comment_ids(**kwargs)]
for batch in gen:
if not batch:
return
if using_gsci:
fullnames = [prefix + base36id for base36id in batch]
else:
fullnames = [prefix + c.id for c in batch]
praw_batch = self.r.info(fullnames=fullnames)
if client_return_batch:
yield praw_batch
else:
for praw_thing in praw_batch:
yield praw_thing