mirror of
https://github.com/Tautulli/Tautulli.git
synced 2025-07-06 21:21:15 -07:00
Update all future imports for Python 2
This commit is contained in:
parent
58eb426eea
commit
82c09570c4
33 changed files with 82 additions and 108 deletions
|
@ -17,7 +17,7 @@
|
||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU General Public License
|
||||||
# along with Tautulli. If not, see <http://www.gnu.org/licenses/>.
|
# along with Tautulli. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
|
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
|
|
|
@ -15,13 +15,11 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from future import standard_library
|
from future.builtins import range
|
||||||
standard_library.install_aliases()
|
|
||||||
from builtins import range
|
|
||||||
|
|
||||||
import datetime
|
import datetime
|
||||||
import os
|
import os
|
||||||
import queue
|
import future.moves.queue as queue
|
||||||
import sqlite3
|
import sqlite3
|
||||||
import sys
|
import sys
|
||||||
import subprocess
|
import subprocess
|
||||||
|
|
|
@ -15,8 +15,8 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
from builtins import object
|
from future.builtins import object
|
||||||
|
|
||||||
import datetime
|
import datetime
|
||||||
import os
|
import os
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
|
|
||||||
import threading
|
import threading
|
||||||
import time
|
import time
|
||||||
|
|
|
@ -15,8 +15,8 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
from builtins import object
|
from future.builtins import object
|
||||||
|
|
||||||
from collections import defaultdict
|
from collections import defaultdict
|
||||||
import json
|
import json
|
||||||
|
|
|
@ -18,8 +18,8 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
from builtins import object
|
from future.builtins import object
|
||||||
|
|
||||||
import hashlib
|
import hashlib
|
||||||
import inspect
|
import inspect
|
||||||
|
|
|
@ -22,10 +22,8 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from future import standard_library
|
|
||||||
standard_library.install_aliases()
|
|
||||||
|
|
||||||
from urllib.request import FancyURLopener
|
from future.moves.urllib.request import FancyURLopener
|
||||||
|
|
||||||
import plexpy
|
import plexpy
|
||||||
if plexpy.PYTHON_VERSION < 3:
|
if plexpy.PYTHON_VERSION < 3:
|
||||||
|
|
|
@ -15,8 +15,8 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from past.builtins import basestring
|
from future.builtins import object
|
||||||
from builtins import object
|
from future.builtins import str
|
||||||
|
|
||||||
import arrow
|
import arrow
|
||||||
import os
|
import os
|
||||||
|
@ -37,7 +37,7 @@ def bool_int(value):
|
||||||
"""
|
"""
|
||||||
Casts a config value into a 0 or 1
|
Casts a config value into a 0 or 1
|
||||||
"""
|
"""
|
||||||
if isinstance(value, basestring):
|
if isinstance(value, str):
|
||||||
if value.lower() in ('', '0', 'false', 'f', 'no', 'n', 'off'):
|
if value.lower() in ('', '0', 'false', 'f', 'no', 'n', 'off'):
|
||||||
value = 0
|
value = 0
|
||||||
return int(bool(value))
|
return int(bool(value))
|
||||||
|
@ -704,7 +704,7 @@ class Config(object):
|
||||||
|
|
||||||
for key, subkeys in self._config.items():
|
for key, subkeys in self._config.items():
|
||||||
for subkey, value in subkeys.items():
|
for subkey, value in subkeys.items():
|
||||||
if isinstance(value, basestring) and len(value.strip()) > 5 and \
|
if isinstance(value, str) and len(value.strip()) > 5 and \
|
||||||
subkey.upper() not in _WHITELIST_KEYS and any(bk in subkey.upper() for bk in _BLACKLIST_KEYS):
|
subkey.upper() not in _WHITELIST_KEYS and any(bk in subkey.upper() for bk in _BLACKLIST_KEYS):
|
||||||
blacklist.add(value.strip())
|
blacklist.add(value.strip())
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import object
|
from future.builtins import object
|
||||||
|
|
||||||
import arrow
|
import arrow
|
||||||
import os
|
import os
|
||||||
|
|
|
@ -18,9 +18,9 @@
|
||||||
from __future__ import division
|
from __future__ import division
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import next
|
from future.builtins import next
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
from builtins import object
|
from future.builtins import object
|
||||||
from past.utils import old_div
|
from past.utils import old_div
|
||||||
|
|
||||||
import json
|
import json
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import object
|
from future.builtins import object
|
||||||
|
|
||||||
import re
|
import re
|
||||||
|
|
||||||
|
|
|
@ -17,9 +17,9 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
from builtins import range
|
from future.builtins import range
|
||||||
from builtins import object
|
from future.builtins import object
|
||||||
|
|
||||||
import datetime
|
import datetime
|
||||||
|
|
||||||
|
|
|
@ -20,10 +20,9 @@ from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from past.builtins import cmp
|
from past.builtins import cmp
|
||||||
from future import standard_library
|
from future import standard_library
|
||||||
standard_library.install_aliases()
|
|
||||||
from builtins import zip
|
from future.builtins import zip
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
from past.builtins import basestring
|
|
||||||
from past.utils import old_div
|
from past.utils import old_div
|
||||||
|
|
||||||
import arrow
|
import arrow
|
||||||
|
@ -39,7 +38,7 @@ import geoip2.database
|
||||||
import geoip2.errors
|
import geoip2.errors
|
||||||
import hashlib
|
import hashlib
|
||||||
import imghdr
|
import imghdr
|
||||||
from itertools import zip_longest
|
from future.moves.itertools import zip_longest
|
||||||
import ipwhois
|
import ipwhois
|
||||||
import ipwhois.exceptions
|
import ipwhois.exceptions
|
||||||
import ipwhois.utils
|
import ipwhois.utils
|
||||||
|
@ -57,7 +56,7 @@ import sys
|
||||||
import tarfile
|
import tarfile
|
||||||
import time
|
import time
|
||||||
import unicodedata
|
import unicodedata
|
||||||
from urllib.parse import urlencode
|
from future.moves.urllib.parse import urlencode
|
||||||
import urllib3
|
import urllib3
|
||||||
from xml.dom import minidom
|
from xml.dom import minidom
|
||||||
import xmltodict
|
import xmltodict
|
||||||
|
@ -583,7 +582,7 @@ def sanitize_out(*dargs, **dkwargs):
|
||||||
|
|
||||||
|
|
||||||
def sanitize(obj):
|
def sanitize(obj):
|
||||||
if isinstance(obj, basestring):
|
if isinstance(obj, str):
|
||||||
return str(obj).replace('<', '<').replace('>', '>')
|
return str(obj).replace('<', '<').replace('>', '>')
|
||||||
elif isinstance(obj, list):
|
elif isinstance(obj, list):
|
||||||
return [sanitize(o) for o in obj]
|
return [sanitize(o) for o in obj]
|
||||||
|
@ -1259,7 +1258,7 @@ def traverse_map(obj, func):
|
||||||
def split_args(args=None):
|
def split_args(args=None):
|
||||||
if isinstance(args, list):
|
if isinstance(args, list):
|
||||||
return args
|
return args
|
||||||
elif isinstance(args, basestring):
|
elif isinstance(args, str):
|
||||||
return [arg.decode(plexpy.SYS_ENCODING, 'ignore')
|
return [arg.decode(plexpy.SYS_ENCODING, 'ignore')
|
||||||
for arg in shlex.split(args.encode(plexpy.SYS_ENCODING, 'ignore'))]
|
for arg in shlex.split(args.encode(plexpy.SYS_ENCODING, 'ignore'))]
|
||||||
return []
|
return []
|
||||||
|
@ -1284,7 +1283,7 @@ def mask_config_passwords(config):
|
||||||
def bool_true(value):
|
def bool_true(value):
|
||||||
if value is True or value == 1:
|
if value is True or value == 1:
|
||||||
return True
|
return True
|
||||||
elif isinstance(value, basestring) and value.lower() in ('1', 'true', 't', 'yes', 'y', 'on'):
|
elif isinstance(value, str) and value.lower() in ('1', 'true', 't', 'yes', 'y', 'on'):
|
||||||
return True
|
return True
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
|
|
@ -17,15 +17,12 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from future import standard_library
|
from future.builtins import object
|
||||||
standard_library.install_aliases()
|
from future.builtins import str
|
||||||
from past.builtins import basestring
|
|
||||||
from builtins import object
|
|
||||||
from builtins import str
|
|
||||||
|
|
||||||
from functools import partial
|
from functools import partial
|
||||||
from multiprocessing.dummy import Pool as ThreadPool
|
from multiprocessing.dummy import Pool as ThreadPool
|
||||||
from urllib.parse import urljoin
|
from future.moves.urllib.parse import urljoin
|
||||||
|
|
||||||
import certifi
|
import certifi
|
||||||
import urllib3
|
import urllib3
|
||||||
|
@ -47,7 +44,7 @@ class HTTPHandler(object):
|
||||||
def __init__(self, urls, headers=None, token=None, timeout=10, ssl_verify=True, silent=False):
|
def __init__(self, urls, headers=None, token=None, timeout=10, ssl_verify=True, silent=False):
|
||||||
self._silent = silent
|
self._silent = silent
|
||||||
|
|
||||||
if isinstance(urls, basestring):
|
if isinstance(urls, str):
|
||||||
self.urls = urls.split() or urls.split(',')
|
self.urls = urls.split() or urls.split(',')
|
||||||
else:
|
else:
|
||||||
self.urls = urls
|
self.urls = urls
|
||||||
|
|
|
@ -17,9 +17,9 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
from builtins import next
|
from future.builtins import next
|
||||||
from builtins import object
|
from future.builtins import object
|
||||||
|
|
||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
|
|
|
@ -17,9 +17,9 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import object
|
from future.builtins import object
|
||||||
|
|
||||||
import queue
|
import future.moves.queue as queue
|
||||||
import time
|
import time
|
||||||
import threading
|
import threading
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
from past.builtins import basestring
|
from past.builtins import basestring
|
||||||
|
|
||||||
from logutils.queue import QueueHandler, QueueListener
|
from logutils.queue import QueueHandler, QueueListener
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
|
|
||||||
import time
|
import time
|
||||||
|
|
||||||
|
|
|
@ -17,9 +17,9 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import next
|
from future.builtins import next
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
from builtins import object
|
from future.builtins import object
|
||||||
|
|
||||||
import arrow
|
import arrow
|
||||||
from collections import OrderedDict
|
from collections import OrderedDict
|
||||||
|
|
|
@ -19,12 +19,10 @@
|
||||||
from __future__ import division
|
from __future__ import division
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from future import standard_library
|
from future.builtins import next
|
||||||
standard_library.install_aliases()
|
from future.builtins import map
|
||||||
from builtins import next
|
from future.builtins import str
|
||||||
from builtins import map
|
from future.builtins import range
|
||||||
from builtins import str
|
|
||||||
from builtins import range
|
|
||||||
from past.builtins import basestring
|
from past.builtins import basestring
|
||||||
from past.utils import old_div
|
from past.utils import old_div
|
||||||
|
|
||||||
|
|
|
@ -17,11 +17,9 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from future import standard_library
|
from future.builtins import next
|
||||||
standard_library.install_aliases()
|
from future.builtins import str
|
||||||
from builtins import next
|
from future.builtins import object
|
||||||
from builtins import str
|
|
||||||
from builtins import object
|
|
||||||
|
|
||||||
import base64
|
import base64
|
||||||
import bleach
|
import bleach
|
||||||
|
@ -38,8 +36,8 @@ import subprocess
|
||||||
import sys
|
import sys
|
||||||
import threading
|
import threading
|
||||||
import time
|
import time
|
||||||
from urllib.parse import urlencode
|
from future.moves.urllib.parse import urlencode
|
||||||
from urllib.parse import urlparse
|
from future.moves.urllib.parse import urlparse
|
||||||
|
|
||||||
try:
|
try:
|
||||||
from Cryptodome.Protocol.KDF import PBKDF2
|
from Cryptodome.Protocol.KDF import PBKDF2
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
|
|
||||||
import arrow
|
import arrow
|
||||||
import sqlite3
|
import sqlite3
|
||||||
|
|
|
@ -17,9 +17,9 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import next
|
from future.builtins import next
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
from builtins import object
|
from future.builtins import object
|
||||||
|
|
||||||
import base64
|
import base64
|
||||||
import json
|
import json
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
|
|
||||||
import sqlite3
|
import sqlite3
|
||||||
from xml.dom import minidom
|
from xml.dom import minidom
|
||||||
|
|
|
@ -17,16 +17,14 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from future import standard_library
|
from future.builtins import next
|
||||||
standard_library.install_aliases()
|
from future.builtins import str
|
||||||
from builtins import next
|
from future.builtins import object
|
||||||
from builtins import str
|
|
||||||
from builtins import object
|
|
||||||
|
|
||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
import time
|
import time
|
||||||
from urllib.parse import quote, quote_plus, urlencode
|
from future.moves.urllib.parse import quote, quote_plus, urlencode
|
||||||
|
|
||||||
import plexpy
|
import plexpy
|
||||||
if plexpy.PYTHON_VERSION < 3:
|
if plexpy.PYTHON_VERSION < 3:
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
|
|
||||||
from bs4 import BeautifulSoup
|
from bs4 import BeautifulSoup
|
||||||
from xml.dom import minidom
|
from xml.dom import minidom
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
|
|
||||||
import cherrypy
|
import cherrypy
|
||||||
|
|
||||||
|
|
|
@ -17,11 +17,9 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from future import standard_library
|
from future.builtins import next
|
||||||
standard_library.install_aliases()
|
from future.builtins import str
|
||||||
from builtins import next
|
from future.builtins import object
|
||||||
from builtins import str
|
|
||||||
from builtins import object
|
|
||||||
|
|
||||||
import httpagentparser
|
import httpagentparser
|
||||||
import time
|
import time
|
||||||
|
|
|
@ -18,8 +18,8 @@
|
||||||
from __future__ import division
|
from __future__ import division
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from builtins import next
|
from future.builtins import next
|
||||||
from builtins import str
|
from future.builtins import str
|
||||||
from past.utils import old_div
|
from past.utils import old_div
|
||||||
|
|
||||||
import os
|
import os
|
||||||
|
|
|
@ -19,9 +19,7 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from future import standard_library
|
from future.builtins import str
|
||||||
standard_library.install_aliases()
|
|
||||||
from builtins import str
|
|
||||||
|
|
||||||
import json
|
import json
|
||||||
import threading
|
import threading
|
||||||
|
|
|
@ -22,13 +22,11 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from future import standard_library
|
from future.builtins import str
|
||||||
standard_library.install_aliases()
|
from future.builtins import object
|
||||||
from builtins import str
|
|
||||||
from builtins import object
|
|
||||||
|
|
||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
from urllib.parse import quote, unquote
|
from future.moves.urllib.parse import quote, unquote
|
||||||
|
|
||||||
import cherrypy
|
import cherrypy
|
||||||
from hashing_passwords import check_hash
|
from hashing_passwords import check_hash
|
||||||
|
|
|
@ -17,19 +17,16 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from future import standard_library
|
from future.builtins import next
|
||||||
standard_library.install_aliases()
|
from future.builtins import object
|
||||||
from builtins import next
|
from future.builtins import str
|
||||||
from builtins import str
|
|
||||||
from past.builtins import basestring
|
|
||||||
from builtins import object
|
|
||||||
|
|
||||||
from io import open
|
from io import open
|
||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
import shutil
|
import shutil
|
||||||
import threading
|
import threading
|
||||||
import urllib.request, urllib.parse, urllib.error
|
from future.moves.urllib.parse import urlencode
|
||||||
|
|
||||||
import cherrypy
|
import cherrypy
|
||||||
from cherrypy.lib.static import serve_file, serve_download
|
from cherrypy.lib.static import serve_file, serve_download
|
||||||
|
@ -330,7 +327,7 @@ class WebInterface(object):
|
||||||
if '{machine_id}' in endpoint:
|
if '{machine_id}' in endpoint:
|
||||||
endpoint = endpoint.format(machine_id=plexpy.CONFIG.PMS_IDENTIFIER)
|
endpoint = endpoint.format(machine_id=plexpy.CONFIG.PMS_IDENTIFIER)
|
||||||
|
|
||||||
return base_url + endpoint + '?' + urllib.parse.urlencode(kwargs)
|
return base_url + endpoint + '?' + urlencode(kwargs)
|
||||||
|
|
||||||
@cherrypy.expose
|
@cherrypy.expose
|
||||||
@requireAuth()
|
@requireAuth()
|
||||||
|
@ -5714,7 +5711,7 @@ class WebInterface(object):
|
||||||
```
|
```
|
||||||
"""
|
"""
|
||||||
geo_info = helpers.geoip_lookup(ip_address)
|
geo_info = helpers.geoip_lookup(ip_address)
|
||||||
if isinstance(geo_info, basestring):
|
if isinstance(geo_info, str):
|
||||||
return {'error': geo_info}
|
return {'error': geo_info}
|
||||||
return geo_info
|
return geo_info
|
||||||
|
|
||||||
|
|
|
@ -17,14 +17,11 @@
|
||||||
|
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
from future import standard_library
|
from future.builtins import object
|
||||||
standard_library.install_aliases()
|
|
||||||
from builtins import str
|
|
||||||
from builtins import object
|
|
||||||
|
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
from urllib.parse import urlencode
|
from future.moves.urllib.parse import urlencode
|
||||||
|
|
||||||
import cherrypy
|
import cherrypy
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue