diff --git a/app/request.py b/app/request.py index 12e1c1e..38b47b0 100644 --- a/app/request.py +++ b/app/request.py @@ -1,6 +1,7 @@ from lxml import etree import random import requests +from requests import Response import urllib.parse as urlparse # Core Google search URLs @@ -72,7 +73,7 @@ class Request: def autocomplete(self, query): ac_query = dict(hl=self.language, q=query) - response = self.send(base_url=AUTOCOMPLETE_URL, query=urlparse.urlencode(ac_query)) + response = self.send(base_url=AUTOCOMPLETE_URL, query=urlparse.urlencode(ac_query)).text if response: dom = etree.fromstring(response) @@ -80,14 +81,9 @@ class Request: return [] - def send(self, base_url=SEARCH_URL, query='', return_bytes=False): + def send(self, base_url=SEARCH_URL, query='') -> Response: headers = { 'User-Agent': self.modified_user_agent } - response = requests.get(base_url + query, headers=headers) - - if return_bytes: - return response.content - else: - return response.text + return requests.get(base_url + query, headers=headers) diff --git a/app/routes.py b/app/routes.py index 42a47bc..ca3bac4 100644 --- a/app/routes.py +++ b/app/routes.py @@ -201,7 +201,7 @@ def element(): src_type = request.args.get('type') try: - file_data = g.user_request.send(base_url=src_url, return_bytes=True) + file_data = g.user_request.send(base_url=src_url).content app.user_elements[session['uuid']] -= 1 tmp_mem = io.BytesIO() tmp_mem.write(file_data) @@ -218,7 +218,7 @@ def element(): @app.route('/window') @auth_required def window(): - get_body = g.user_request.send(base_url=request.args.get('location')) + get_body = g.user_request.send(base_url=request.args.get('location')).text get_body = get_body.replace('src="/', 'src="' + request.args.get('location') + '"') get_body = get_body.replace('href="/', 'href="' + request.args.get('location') + '"') diff --git a/app/utils/routing_utils.py b/app/utils/routing_utils.py index 40b375c..cc3ed1f 100644 --- a/app/utils/routing_utils.py +++ b/app/utils/routing_utils.py @@ -57,7 +57,7 @@ class RoutingUtils: content_filter = Filter(self.session['keys'], mobile=mobile, config=self.config) full_query = gen_query(self.query, self.request_params, self.config, content_filter.near) - get_body = g.user_request.send(query=full_query) + get_body = g.user_request.send(query=full_query).text # Produce cleanable html soup from response html_soup = BeautifulSoup(content_filter.reskin(get_body), 'html.parser')