From b47b9d556e7d7edd87caf957d56083436fa6449c Mon Sep 17 00:00:00 2001 From: Aziez Ahmed Chawdhary Date: Fri, 27 Apr 2018 21:00:32 +0000 Subject: [PATCH] feat(verbose): Adding verbose mode Adding a verbose mode. When enabked Upodder will ask user for confirmation before downloading each episode. --- upodder/upodder.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/upodder/upodder.py b/upodder/upodder.py index 2f1ae22..d352f58 100755 --- a/upodder/upodder.py +++ b/upodder/upodder.py @@ -36,6 +36,8 @@ help='Import feeds from an OPML file.') parser.add_argument("--quiet", help="Only output errors.", action="store_true") +parser.add_argument('--verbose', action='store_true', + help="Ask user for confirmation before downloading each episode.") args = parser.parse_args() YES = [1,"1","on","yes","Yes","YES","y","Y","true","True","TRUE","t","T"] @@ -115,6 +117,11 @@ def _download_enclosure(self, enclosure, entry, feed, no_download=False): """Downloads URL to file, returns file name of download (from URL or Content-Disposition)""" if not os.path.exists(os.path.dirname(downloadto)): os.makedirs(os.path.dirname(downloadto)) + + if args.verbose: + user_wish_to_download = input("Would you like to download " + entry['title'] +"? (y/n) or quit? (Ctrl+c): ") + if user_wish_to_download not in YES: + return True l.debug("Downloading %s from %s" % (entry['title'], enclosure['href'])) r = requests.get(enclosure['href'], stream=True, timeout=25)