From 0ae1747c3bb9c90be13d423d17f9ab682061722f Mon Sep 17 00:00:00 2001 From: dani Date: Mon, 21 Mar 2016 21:50:09 +0800 Subject: [PATCH 1/3] fix advanced sort bugs (close #37) this is simple fix for advanced sort bug which also affect simple sort --- redditdownload/reddit.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/redditdownload/reddit.py b/redditdownload/reddit.py index bd01110..a46faab 100755 --- a/redditdownload/reddit.py +++ b/redditdownload/reddit.py @@ -15,6 +15,8 @@ def getitems(subreddit, multireddit=False, previd='', reddit_sort=None): :param reddit_sort: type of sorting post :returns: list -- list of post url """ + # assume no advanced sorting. + is_advanced_sort = False if multireddit: if '/m/' not in subreddit: From 34f7bdecf5c36a5d2b6a890d26dbdaa99edb64fe Mon Sep 17 00:00:00 2001 From: dani Date: Tue, 29 Mar 2016 04:31:16 +0800 Subject: [PATCH 2/3] fix last id. Conflicts: redditdownload/redditdownload.py --- redditdownload/redditdownload.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/redditdownload/redditdownload.py b/redditdownload/redditdownload.py index 9d47d8e..5c4f5ef 100755 --- a/redditdownload/redditdownload.py +++ b/redditdownload/redditdownload.py @@ -544,7 +544,7 @@ def main(): if FINISHED: break - LAST = ITEM['id'] if ITEM is not None else None + LAST = ITEMS[-1]['id'] if ITEMS[-1] is not None else None print 'Downloaded {} files'.format(DOWNLOADED) '(Processed {}, Skipped {}, Exists {})'.format(TOTAL, SKIPPED, ERRORS) From 840b8a3109236b3e07269e0d9025715a69d18401 Mon Sep 17 00:00:00 2001 From: dani Date: Thu, 31 Mar 2016 15:08:35 +0800 Subject: [PATCH 3/3] fix url for simple sort. --- redditdownload/reddit.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/redditdownload/reddit.py b/redditdownload/reddit.py index a46faab..a17cce5 100755 --- a/redditdownload/reddit.py +++ b/redditdownload/reddit.py @@ -1,6 +1,7 @@ #!/usr/bin/env python """Return list of items from a sub-reddit of reddit.com.""" +import logging import sys from urllib2 import urlopen, Request, HTTPError from json import JSONDecoder @@ -16,6 +17,7 @@ def getitems(subreddit, multireddit=False, previd='', reddit_sort=None): :returns: list -- list of post url """ # assume no advanced sorting. + logger = logging.getLogger(__name__) is_advanced_sort = False if multireddit: @@ -75,6 +77,8 @@ def getitems(subreddit, multireddit=False, previd='', reddit_sort=None): # check if url have already query if '?' in url.split('/')[-1] and is_advanced_sort: url += '&' + elif not is_advanced_sort: + pass # fix '?' on simple sort else: # url dont have query yet url += '?' @@ -83,6 +87,7 @@ def getitems(subreddit, multireddit=False, previd='', reddit_sort=None): url += 'sort={}&t={}'.format(sort_type, sort_time_limit) try: + logger.debug('url[{}]'.format(url)) req = Request(url, headers=hdr) json = urlopen(req).read() data = JSONDecoder().decode(json)