From 34437a918e971a551080e7d4a738fd6b4483b8e6 Mon Sep 17 00:00:00 2001 From: NotoriousRebel Date: Wed, 19 Dec 2018 16:40:26 -0500 Subject: [PATCH] Fixed small error in constants as well as constant User Agent for google and increased delay time if google starts blocking requests. --- discovery/constants.py | 7 ++++--- discovery/googlesearch.py | 19 ++++++++++--------- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/discovery/constants.py b/discovery/constants.py index 26baf24e..bd038403 100644 --- a/discovery/constants.py +++ b/discovery/constants.py @@ -1,8 +1,8 @@ """ Module that contains constants used across plugins Contains list of user agents and function to get random delay and user agent. - -From https://github.com/tamimibrahim17/List-of-user-agents +As well as a defined User Agent for Google Search +User-Agents from: https://github.com/tamimibrahim17/List-of-user-agents """ import random @@ -24,7 +24,6 @@ "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1664.3 Safari/537.36", "Opera/9.80 (X11; Linux i686; U; ja) Presto/2.7.62 Version/11.01", "Mozilla/5.0 (Windows NT 4.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2049.0 Safari/537.36", - "More Internet Explorer 9.0 user agents strings -->>", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36", "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)", "Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; SLCC1; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 1.1.4322)", @@ -240,6 +239,8 @@ "Mozilla/5.0 (Windows NT 5.1; U; de; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6 Opera 11.00" ] +googleUA = "Mozilla/5.0 (Windows NT 6.2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1464.0 Safari/537.36" + def getDelay(): return random.randint(1, 3) - .5 diff --git a/discovery/googlesearch.py b/discovery/googlesearch.py index 0d280e18..0453b725 100644 --- a/discovery/googlesearch.py +++ b/discovery/googlesearch.py @@ -24,13 +24,13 @@ def do_search(self): except Exception as e: print(e) try: - params = {'User-Agent': getUserAgent()} # select random user agent - r = requests.get(urly, params=params) + headers = {'User-Agent': googleUA} + r = requests.get(urly, headers=headers) except Exception as e: print(e) self.results = r.text if (self.search(self.results)): - time.sleep(getDelay() * 4) # sleep for a longer time + time.sleep(getDelay() * 5) # sleep for a longer time else: time.sleep(getDelay()) self.totalresults += self.results @@ -42,12 +42,13 @@ def do_search_profiles(self): except Exception as e: print(e) try: - r = requests.get(urly) + headers = {'User-Agent': googleUA} + r = requests.get(urly, headers=headers) except Exception as e: print(e) self.results = r.text if (self.search(self.results)): - time.sleep(getDelay() * 2) # sleep for a longer time + time.sleep(getDelay() * 5) # sleep for a longer time else: time.sleep(getDelay()) self.totalresults += self.results @@ -94,7 +95,7 @@ def append_dorks(self): try: # wrap in try-except incase filepaths are messed up with open('wordlists/dorks.txt', mode='r') as fp: self.dorks = [dork.strip() for dork in fp] - except IOError as error: + except FileNotFoundError as error: print(error) def construct_dorks(self): @@ -133,15 +134,15 @@ def googledork(self): pass def send_dork(self, start, end): # helper function to minimize code reusability - params = {'User-Agent': getUserAgent()} + headers = {'User-Agent': googleUA} # get random user agent to try and prevent google from blocking ip for i in range(start, end): try: link = self.links[i] # get link from dork list - req = requests.get(link, params=params) + req = requests.get(link, headers=headers) self.results = req.text if (self.search(self.results)): - time.sleep(getDelay() * 4) # sleep for a longer time + time.sleep(getDelay() * 5) # sleep for a longer time else: time.sleep(getDelay()) self.totalresults += self.results