Пример #1
0
    def __init__(self,
                 request: Request = Request(),
                 service_url: str = "translate.google.com"):

        if service_url not in DOMAINS:
            raise ServiceURLError("{url} is not a valid service URL".format(
                url=str(service_url)))

        google_v1 = GoogleTranslateV1(service_url=service_url, request=request)
        google_v2 = GoogleTranslateV2(service_url=service_url, request=request)

        self.services = [google_v1, google_v2]
Пример #2
0
    def __init__(
        self,
        services_list: List[BaseTranslator] = [
            GoogleTranslate,
            YandexTranslate,
            MicrosoftTranslate,
            ReversoTranslate,
            BingTranslate,
            DeeplTranslate,
            LibreTranslate,
            TranslateComTranslate,
            MyMemoryTranslate
        ],
        request: Request = Request(),
        fast: bool = False
    ) -> None:
        """
        A special Translator class grouping multiple translators to have better results.

        Parameters:
        ----------
            services_list : list
                A list of instanciated or not BaseTranslator subclasses to use as translators
            request : Request
                The Request class used to make requests
            fast : bool
                Enabling fast mode (concurrent processing) or not
        """

        if not isinstance(services_list, List):
            raise ParameterTypeError("Parameter 'services_list' must be a list, {} was given".format(type(services_list).__name__))

        if not services_list:
            raise ParameterValueError("Parameter 'services_list' must not be empty")

        self.FAST_MODE = fast

        if isinstance(request, type):  # is not instantiated
            self.request = request()
        else:
            self.request = request

        self.services = []
        for service in services_list:
            if not isinstance(service, BaseTranslator):  # not instantiated
                if not issubclass(service, BaseTranslator):
                    raise ParameterTypeError("{service} must be a child class of the BaseTranslator class".format(service=service))
            self.services.append(service)
Пример #3
0
 def __init__(self, request: Request = Request()):
     self.session = request
Пример #4
0
 def __init__(self, request: Request = Request(), preferred_langs: List = ["EN", "RU"]) -> None:
     self.session = request
     self.jsonrpc = JSONRPCRequest(request)
     self.user_preferred_langs = preferred_langs
Пример #5
0
 def __init__(self, request: Request = Request()):
     self.session = request
     self.session.header = {"User-Agent": "ru.yandex.translate/3.20.2024"}
Пример #6
0
 def __init__(self, request: Request = Request()):
     self.session = request
     self.translate_url = "https://www.translate.com/translator/ajax_translate"
     self.langdetect_url = "https://www.translate.com/translator/ajax_lang_auto_detect"
Пример #7
0
 def __init__(self,
              request: Request = Request(),
              service_url: str = "translate.google.com"):
     self.session = request
     self.service_url = service_url
     self.token_acquirer = TokenAcquirer(service_url)
Пример #8
0
 def __init__(self,
              request: Request = Request(),
              service_url: str = "translate.google.com"):
     self.session = request
     self.service_url = service_url
Пример #9
0
 def __init__(self, request: Request = Request()):
     self.session_manager = MicrosoftSessionManager(request)
     self.session = request
Пример #10
0
 def __init__(self, request: Request = Request()):
     self.session = request
     self.base_url = "https://api.mymemory.translated.net/get"
Пример #11
0
 def __init__(self, request: Request = Request()):
     self.session_manager = BingSessionManager(request)
     self.session = request