From 79793dd6e8837f9c77c3603e81413d70c0a5647f Mon Sep 17 00:00:00 2001 From: Unknown Date: Wed, 16 Aug 2017 21:00:32 -0500 Subject: [PATCH 1/9] wallpaper moved to isolated module also allows !wallpaper help see issue #7 for details --- app/dragon-bot.py | 18 ++++++------------ app/wallpaper.py | 29 +++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+), 12 deletions(-) create mode 100644 app/wallpaper.py diff --git a/app/dragon-bot.py b/app/dragon-bot.py index 2ef6359f..ee7329d3 100644 --- a/app/dragon-bot.py +++ b/app/dragon-bot.py @@ -8,6 +8,7 @@ import define_word import help_methods import discord import docker +import wallpaper from pybooru import Danbooru # Client object @@ -26,7 +27,7 @@ async def on_ready(): print("\n********************************") await client.change_presence(game=discord.Game(name='Type !help to see how to use me')) - + if debug: print("\nPress control+c to exit the bot") print("Followed by control+d or by typing") @@ -192,17 +193,10 @@ async def on_message(message): # await client.send_message(message.channel, 'Deleted {} message(s)'.format(len(deleted))) if message.content.startswith('!wallpaper'): - url = 'https://source.unsplash.com/3840x2160/' - if len(message.content.split()) > 1: - keyword = message.content.split()[1] - url = "?".join((url, keyword)) - - if 'waifu' in keyword: - url = 'https://media0.giphy.com/media/C79RKZ7nOcK8U/giphy.gif' - - results = requests.get(url).url - await client.send_message(message.channel, results) - + await client.send_message( + message.channel, + wallpaper.getselect(message.content) + ) ################################### ###### +-------------------+ ###### diff --git a/app/wallpaper.py b/app/wallpaper.py new file mode 100644 index 00000000..26d7af2d --- /dev/null +++ b/app/wallpaper.py @@ -0,0 +1,29 @@ +import help_methods + +def getselect(select): + url = 'https://source.unsplash.com/3840x2160/' + + if len(select.split()) > 2: + keyword = str(select.split('-')) + keyword = keyword.replace('[', '') + keyword = keyword.replace(']', '') + keyword = keyword.replace('\'', '') + keyword = keyword.replace(' ', '&') + keyword = keyword.replace('!wallpaper&', '') + #print(url) + url = "?".join((url, keyword)) + if 'waifu' in keyword: + url = 'https://media0.giphy.com/media/C79RKZ7nOcK8U/giphy.gif' + + return url + + if len(select.split()) > 1: + keyword = select.split()[1] + #print (url) + url = "?".join((url, keyword)) + if 'waifu' in keyword: + url = 'https://media0.giphy.com/media/C79RKZ7nOcK8U/giphy.gif' + if 'help' in keyword: + return help_methods.get_help_message('wallpaper') + + return url From 1ba5e3d38ed065852e830ff0e9959879534eeabd Mon Sep 17 00:00:00 2001 From: Unknown Date: Wed, 16 Aug 2017 21:46:48 -0500 Subject: [PATCH 2/9] Cleanup code remove redundant return --- app/wallpaper.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/wallpaper.py b/app/wallpaper.py index 26d7af2d..72aed63c 100644 --- a/app/wallpaper.py +++ b/app/wallpaper.py @@ -15,8 +15,6 @@ def getselect(select): if 'waifu' in keyword: url = 'https://media0.giphy.com/media/C79RKZ7nOcK8U/giphy.gif' - return url - if len(select.split()) > 1: keyword = select.split()[1] #print (url) From fc7c65a6d96e089d13eba282ab3d0fdbaae5d8dc Mon Sep 17 00:00:00 2001 From: Unknown Date: Wed, 16 Aug 2017 21:00:32 -0500 Subject: [PATCH 3/9] wallpaper moved to isolated module also allows !wallpaper help see issue #7 for details --- app/dragon-bot.py | 16 +++++----------- app/wallpaper.py | 29 +++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 11 deletions(-) create mode 100644 app/wallpaper.py diff --git a/app/dragon-bot.py b/app/dragon-bot.py index 57aa3772..a19a12a2 100644 --- a/app/dragon-bot.py +++ b/app/dragon-bot.py @@ -10,6 +10,7 @@ import define_word import help_methods import discord import docker +import wallpaper from pybooru import Danbooru # Client object @@ -191,17 +192,10 @@ async def on_message(message): # await client.send_message(message.channel, 'Deleted {} message(s)'.format(len(deleted))) if message.content.startswith('!wallpaper'): - url = 'https://source.unsplash.com/3840x2160/' - if len(message.content.split()) > 1: - keyword = message.content.split()[1] - url = "?".join((url, keyword)) - - if 'waifu' in keyword: - url = 'https://media0.giphy.com/media/C79RKZ7nOcK8U/giphy.gif' - - results = requests.get(url).url - await client.send_message(message.channel, results) - + await client.send_message( + message.channel, + wallpaper.getselect(message.content) + ) ################################### ###### +-------------------+ ###### diff --git a/app/wallpaper.py b/app/wallpaper.py new file mode 100644 index 00000000..26d7af2d --- /dev/null +++ b/app/wallpaper.py @@ -0,0 +1,29 @@ +import help_methods + +def getselect(select): + url = 'https://source.unsplash.com/3840x2160/' + + if len(select.split()) > 2: + keyword = str(select.split('-')) + keyword = keyword.replace('[', '') + keyword = keyword.replace(']', '') + keyword = keyword.replace('\'', '') + keyword = keyword.replace(' ', '&') + keyword = keyword.replace('!wallpaper&', '') + #print(url) + url = "?".join((url, keyword)) + if 'waifu' in keyword: + url = 'https://media0.giphy.com/media/C79RKZ7nOcK8U/giphy.gif' + + return url + + if len(select.split()) > 1: + keyword = select.split()[1] + #print (url) + url = "?".join((url, keyword)) + if 'waifu' in keyword: + url = 'https://media0.giphy.com/media/C79RKZ7nOcK8U/giphy.gif' + if 'help' in keyword: + return help_methods.get_help_message('wallpaper') + + return url From 3ecfe21fce97b788105fda4d240ab7a236669ab6 Mon Sep 17 00:00:00 2001 From: Unknown Date: Wed, 16 Aug 2017 21:46:48 -0500 Subject: [PATCH 4/9] Cleanup code remove redundant return --- app/wallpaper.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/wallpaper.py b/app/wallpaper.py index 26d7af2d..72aed63c 100644 --- a/app/wallpaper.py +++ b/app/wallpaper.py @@ -15,8 +15,6 @@ def getselect(select): if 'waifu' in keyword: url = 'https://media0.giphy.com/media/C79RKZ7nOcK8U/giphy.gif' - return url - if len(select.split()) > 1: keyword = select.split()[1] #print (url) From b8626e5599f0916fb15a86d44901fcd0e3ed7720 Mon Sep 17 00:00:00 2001 From: Unknown Date: Wed, 16 Aug 2017 22:23:47 -0500 Subject: [PATCH 5/9] Cleanup Code Removed tons of instances of x.replace --- app/wallpaper.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/app/wallpaper.py b/app/wallpaper.py index 72aed63c..702c4959 100644 --- a/app/wallpaper.py +++ b/app/wallpaper.py @@ -5,12 +5,10 @@ def getselect(select): if len(select.split()) > 2: keyword = str(select.split('-')) - keyword = keyword.replace('[', '') - keyword = keyword.replace(']', '') - keyword = keyword.replace('\'', '') keyword = keyword.replace(' ', '&') - keyword = keyword.replace('!wallpaper&', '') - #print(url) + for reform in ['[', ']', '\'', '!wallpaper&']: + if reform in keyword: + keyword = keyword.replace(reform,"") url = "?".join((url, keyword)) if 'waifu' in keyword: url = 'https://media0.giphy.com/media/C79RKZ7nOcK8U/giphy.gif' From aefb1aadf2def5a042fb613632217d589464abe9 Mon Sep 17 00:00:00 2001 From: Unknown Date: Thu, 17 Aug 2017 00:30:17 -0500 Subject: [PATCH 6/9] Complete Rewrite changed everything --- app/dragon-bot.py | 2 +- app/wallpaper.py | 37 +++++++++++++++++-------------------- 2 files changed, 18 insertions(+), 21 deletions(-) diff --git a/app/dragon-bot.py b/app/dragon-bot.py index a19a12a2..da68e14a 100644 --- a/app/dragon-bot.py +++ b/app/dragon-bot.py @@ -194,7 +194,7 @@ async def on_message(message): if message.content.startswith('!wallpaper'): await client.send_message( message.channel, - wallpaper.getselect(message.content) + wallpaper.get_wall(message.content) ) ################################### diff --git a/app/wallpaper.py b/app/wallpaper.py index e21dde03..dd1740ca 100644 --- a/app/wallpaper.py +++ b/app/wallpaper.py @@ -1,25 +1,22 @@ import help_methods -def getselect(select): - url = 'https://source.unsplash.com/3840x2160/' +def get_wall(message): + unsplash_url = "https://source.unsplash.com/{}/?".format(resolution) - if len(select.split()) > 2: - keyword = str(select.split('-')) - keyword = keyword.replace(' ', '&') - for reform in ['[', ']', '\'', '!wallpaper&']: - if reform in keyword: - keyword = keyword.replace(reform,"") - url = "?".join((url, keyword)) - if 'waifu' in keyword: - url = 'https://media0.giphy.com/media/C79RKZ7nOcK8U/giphy.gif' + if len(message.split()) > 2: + search_terms = message.split()[1:] - if len(select.split()) > 1: - #print (url) - keyword = select.split()[1] - url = "?".join((url, keyword)) - if 'waifu' in keyword: - url = 'https://media0.giphy.com/media/C79RKZ7nOcK8U/giphy.gif' - if 'help' in keyword: - return help_methods.get_help_message('wallpaper') + # Turn search_terms into strings separated by commas + joined_terms = ','.join(search_terms) - return url + # Add those comma separated strings onto the end of the URL variable + url = unsplash_url + joined_terms + + elif len(message.split()) > 1: + term = message.split()[1] + url = unsplash_url + term + + else: + url = unsplash_url + + return url From 6b727ea417ad290331dc80093e01e3b22d97dbd5 Mon Sep 17 00:00:00 2001 From: Unknown Date: Thu, 17 Aug 2017 00:51:35 -0500 Subject: [PATCH 7/9] bugfix remove unused variable. import requests for correct image retrieval --- app/wallpaper.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/app/wallpaper.py b/app/wallpaper.py index dd1740ca..865c8e17 100644 --- a/app/wallpaper.py +++ b/app/wallpaper.py @@ -1,7 +1,6 @@ -import help_methods - +import requests def get_wall(message): - unsplash_url = "https://source.unsplash.com/{}/?".format(resolution) + unsplash_url = "https://source.unsplash.com/3840x2160/?" if len(message.split()) > 2: search_terms = message.split()[1:] @@ -11,12 +10,15 @@ def get_wall(message): # Add those comma separated strings onto the end of the URL variable url = unsplash_url + joined_terms + print(url) elif len(message.split()) > 1: term = message.split()[1] url = unsplash_url + term + print(url) else: url = unsplash_url + print(url) - return url + return requests.get(url).url From 3cb84b9d6a1e6e53c70d62150dff1038d12df1dd Mon Sep 17 00:00:00 2001 From: Unknown Date: Thu, 17 Aug 2017 01:02:21 -0500 Subject: [PATCH 8/9] moar bugfix correct indent for response, adds response for parse incorrect tag url --- app/wallpaper.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/app/wallpaper.py b/app/wallpaper.py index 865c8e17..cf01ce51 100644 --- a/app/wallpaper.py +++ b/app/wallpaper.py @@ -10,15 +10,17 @@ def get_wall(message): # Add those comma separated strings onto the end of the URL variable url = unsplash_url + joined_terms - print(url) elif len(message.split()) > 1: term = message.split()[1] url = unsplash_url + term - print(url) else: url = unsplash_url - print(url) - return requests.get(url).url + response = requests.get(url).url + + if 'photo-1446704477871-62a4972035cd' in response: + return "Could not find and image for those tags." + else: + return response From 142486a80c4cc6d5e3cd464b6c218b0579d47178 Mon Sep 17 00:00:00 2001 From: Unknown Date: Thu, 17 Aug 2017 01:07:10 -0500 Subject: [PATCH 9/9] small fixes typo and help_method update --- app/help_methods.py | 2 +- app/wallpaper.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/help_methods.py b/app/help_methods.py index 75a809c6..ce4ee995 100644 --- a/app/help_methods.py +++ b/app/help_methods.py @@ -45,7 +45,7 @@ def get_help_message(method): 'wallpaper': [ 'Returns the URL for a 4k wallpaper. You can enter', 'a search term as well, for example, !wallpaper, or', - ', !wallpaper flowers' + ', !wallpaper flowers. Supports multiple tags.' ] } diff --git a/app/wallpaper.py b/app/wallpaper.py index cf01ce51..a16b3d04 100644 --- a/app/wallpaper.py +++ b/app/wallpaper.py @@ -21,6 +21,6 @@ def get_wall(message): response = requests.get(url).url if 'photo-1446704477871-62a4972035cd' in response: - return "Could not find and image for those tags." + return "Could not find an image for those tags." else: return response