diff --git a/handler.py b/handler.py index dbc2d26..4b2ddc4 100644 --- a/handler.py +++ b/handler.py @@ -2,13 +2,13 @@ import tornado.ioloop, tornado.web, tornado.autoreload from tornado.escape import json_encode, json_decode -import safeurl, types, sys, re, mimetypes, glob, jsbeautifier, urlparse, pycurl +import safeurl, types, sys, re, mimetypes, glob, jsbeautifier, urllib.parse, pycurl import calendar, time, datetime from netaddr import * from collections import defaultdict from bs4 import BeautifulSoup -from cgi import escape +from html import escape #------------------------------------------------------------ # Base / Status Code Handlers diff --git a/safeurl.py b/safeurl.py index a9be918..4c5ebf8 100644 --- a/safeurl.py +++ b/safeurl.py @@ -15,7 +15,7 @@ import re import netaddr import pycurl -import StringIO +import io # Python 2.7/3 urlparse try: @@ -707,7 +707,7 @@ def execute(self, url): self._handle.setopt(pycurl.URL, url["cleanUrl"]) # Execute the cURL request - response = StringIO.StringIO() + response = io.BytesIO() self._handle.setopt(pycurl.WRITEFUNCTION, response.write) self._handle.perform() @@ -729,4 +729,5 @@ def execute(self, url): if not redirected: break - return response.getvalue() + return response.getvalue().decode('utf-8') + diff --git a/setup.py b/setup.py index 87c8cbc..fd53ebd 100644 --- a/setup.py +++ b/setup.py @@ -9,6 +9,6 @@ long_description=open('README.md').read(), author='Ben Sadeghipour', url='https://github.com/nahamsec/JSParser', - install_requires=['safeurl', 'tornado', 'jsbeautifier', + install_requires=['safeurl', 'tornado<=5.1', 'jsbeautifier', 'netaddr', 'pycurl', 'BeautifulSoup4'], )