migliorie a proxytranslate, possibile fix tests

This commit is contained in:
mac12m99
2021-01-25 23:06:41 +01:00
parent 342d36fa78
commit af0a83b5cf
5 changed files with 13 additions and 10 deletions

View File

@@ -29,7 +29,7 @@
"guardaserieicu": "https://guardaserie.shop",
"hd4me": "https://hd4me.net",
"ilcorsaronero": "https://ilcorsaronero.link",
"ilgeniodellostreaming": "https://ilgeniodellostreaming.cat",
"ilgeniodellostreaming": "https://ilgeniodellostreaming.dev",
"ilgeniodellostreaming_cam": "https://ilgeniodellostreaming.gold",
"italiaserie": "https://italiaserie.top",
"mediasetplay": "https://www.mediasetplay.mediaset.it",

View File

@@ -23,7 +23,7 @@ from platformcode import config
def findhost(url):
data = support.httptools.downloadpage(url).data
host = support.scrapertools.find_single_match(data, '<div class="elementor-button-wrapper"> <a href="([^"]+)"')
host = support.scrapertools.find_single_match(data, '<div class="elementor-button-wrapper">\s*<a href="([^"]+)"')
return host
host = config.get_channel_url(findhost)

View File

@@ -418,7 +418,7 @@ def downloadpage(url, **opt):
response['data'] = response['data'].decode('ISO-8859-1')
if req.headers.get('Server', '').startswith('cloudflare') and response_code in [429, 503, 403]\
and not opt.get('CF', False) and 'Ray ID' in response['data']:
and not opt.get('CF', False) and 'Ray ID' in response['data'] and not opt.get('post', None):
logger.debug("CF retry... for domain: %s" % domain)
from lib import proxytranslate
gResp = proxytranslate.process_request_proxy(url)

View File

@@ -21,9 +21,11 @@ HEADERS = {
}
MAX_CONECTION_THREAD = 10
SL = 'en'
TL = 'it'
BASE_URL_PROXY = 'https://translate.googleusercontent.com'
BASE_URL_TRANSLATE = 'https://translate.google.com/translate?hl=it&sl=en&tl=it&u=[TARGET_URL]&sandbox=0' # noqa: E501
BASE_URL_TRANSLATE = 'https://translate.google.com/translate?hl=it&sl=' + SL + '&tl=' + TL + '&u=[TARGET_URL]&sandbox=0' # noqa: E501
def checker_url(html, url):
@@ -52,7 +54,7 @@ def process_request_proxy(url):
url_request = checker_url(
return_html.text,
BASE_URL_PROXY + '/translate_p?hl=it&sl=en&tl=it&u='
BASE_URL_PROXY + '/translate_p?hl=it&sl=' + SL + '&tl=' + TL + '&u='
)
logger.debug(url_request)
@@ -85,7 +87,9 @@ def process_request_proxy(url):
data = re.sub('\s(\w+)=(?!")([^<>\s]+)', r' \1="\2"', data)
data = re.sub('https://translate\.googleusercontent\.com/.*?u=(.*?)&amp;usg=[A-Za-z0-9_-]+', '\\1', data)
data = re.sub('https?://[a-zA-Z0-9]+--' + domain.replace('.', '-') + '\.translate\.goog(/[a-zA-Z0-9#/-]+)', 'https://' + domain + '\\1', data)
data = re.sub('\s+<', '<', data)
data = data.replace('&amp;', '&').replace('https://translate.google.com/website?sl=' + SL + '&tl=' + TL + '&u=', '')
return {'url': url.strip(), 'result': result, 'data': data.replace('&amp;', '&')}
return {'url': url.strip(), 'result': result, 'data': data}
except Exception as e:
logger.error(e)

View File

@@ -180,8 +180,6 @@ for chItem in channel_list:
itemlist = getattr(module, it.action)(it)
menuItemlist[it.title] = itemlist
logMenu[it.title] = logger.recordedLog
logger.recordedLog = ''
# some sites might have no link inside, but if all results are without servers, there's something wrong
for resIt in itemlist:
@@ -207,6 +205,7 @@ for chItem in channel_list:
except:
import traceback
logger.error(traceback.format_exc())
logMenu[it.title] = logger.recordedLog
logger.recordedLog = ''