Updated to use conditional decoding dependent on language
This commit is contained in:
parent
c019c01139
commit
dc65d7725f
|
@ -61,12 +61,19 @@ def gen_query(query, args, near_city=None, language='lang_en'):
|
|||
|
||||
|
||||
class Request:
|
||||
def __init__(self, normal_ua):
|
||||
def __init__(self, normal_ua, language='lang_en'):
|
||||
self.modified_user_agent = gen_user_agent(normal_ua)
|
||||
self.language = language
|
||||
|
||||
def __getitem__(self, name):
|
||||
return getattr(self, name)
|
||||
|
||||
def get_decode_value(self):
|
||||
if 'lang_zh' in self.language:
|
||||
return 'gb2312'
|
||||
else:
|
||||
return 'unicode-escape'
|
||||
|
||||
def send(self, base_url=SEARCH_URL, query='', return_bytes=False):
|
||||
response_header = []
|
||||
|
||||
|
@ -83,4 +90,4 @@ class Request:
|
|||
if return_bytes:
|
||||
return b_obj.getvalue()
|
||||
else:
|
||||
return b_obj.getvalue().decode('gb2312', 'ignore')
|
||||
return b_obj.getvalue().decode(self.get_decode_value(), 'ignore')
|
||||
|
|
|
@ -20,13 +20,12 @@ CONFIG_PATH = app.config['STATIC_FOLDER'] + '/config.json'
|
|||
@app.before_request
|
||||
def before_request_func():
|
||||
json_config = json.load(open(CONFIG_PATH)) if os.path.exists(CONFIG_PATH) else {'url': request.url_root}
|
||||
|
||||
g.user_request = Request(request.headers.get('User-Agent'))
|
||||
g.user_config = Config(**json_config)
|
||||
|
||||
if not g.user_config.url:
|
||||
g.user_config.url = request.url_root
|
||||
|
||||
g.user_request = Request(request.headers.get('User-Agent'), language=g.user_config.lang)
|
||||
g.app_location = g.user_config.url
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user