- rimosso supporto a TVDB (l'accesso alle API diventerà a pagamento)
- aggiunto canale Discovery+
- aggiunta possibilità di scegliere numerazioni alternative per le serie tv
- migliorie interne di vario tipo (tra cui un migliore riconoscimento dei contenuti nel caso siano scritti male)
This commit is contained in:
mac12m99
2021-02-13 16:37:02 +01:00
parent 0ebc744115
commit 748fad7431
64 changed files with 2203 additions and 712 deletions
+29 -9
View File
@@ -13,7 +13,10 @@ import re
import time
import requests
from platformcode import logger
try:
from platformcode import logger
except ImportError:
logger = None
HEADERS = {
'Host': 'translate.google.com',
@@ -21,9 +24,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):
@@ -43,7 +48,10 @@ def process_request_proxy(url):
target_url = \
BASE_URL_TRANSLATE.replace('[TARGET_URL]', request.quote(url))
logger.debug(target_url)
if logger:
logger.debug(target_url)
else:
print(target_url)
return_html = requests.get(target_url, timeout=20, headers=HEADERS)
@@ -52,10 +60,13 @@ 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)
if logger:
logger.debug(url_request)
else:
print(url_request)
request_final = requests.get(
url_request,
@@ -66,7 +77,10 @@ def process_request_proxy(url):
url_request_proxy = checker_url(
request_final.text, 'translate.google')
logger.debug(url_request_proxy)
if logger:
logger.debug(url_request_proxy)
else:
print(url_request_proxy)
data = None
result = None
@@ -80,12 +94,18 @@ def process_request_proxy(url):
data = result.content.decode('utf-8', 'ignore')
if not PY3:
data = data.encode('utf-8')
logger.debug()
if logger:
logger.debug()
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)
if logger:
logger.error(e)
else:
print(e)