flix-cli icon indicating copy to clipboard operation
flix-cli copied to clipboard

Is flix cli working on Android Termux

Open Jagadishwar49 opened this issue 1 month ago • 1 comments

╭───────── Traceback (most recent call last) ─────────╮ │ /data/data/com.termux/files/usr/lib/python3.12/site │ │ -packages/httpx/_transports/default.py:101 in │ │ map_httpcore_exceptions │ │ │ │ 98 │ if len(HTTPCORE_EXC_MAP) == 0: │ │ 99 │ │ HTTPCORE_EXC_MAP = _load_httpcore_exc │ │ 100 │ try: │ │ ❱ 101 │ │ yield │ │ 102 │ except Exception as exc: │ │ 103 │ │ mapped_exc = None │ │ 104 │ │ │ │ ╭─────────────────── locals ────────────────────╮ │ │ │ message = '[SSL] unknown error (_ssl.c:1010)' │ │ │ ╰───────────────────────────────────────────────╯ │ │ │ │ /data/data/com.termux/files/usr/lib/python3.12/site │ │ -packages/httpx/_transports/default.py:250 in │ │ handle_request │ │ │ │ 247 │ │ │ extensions=request.extensions, │ │ 248 │ │ ) │ │ 249 │ │ with map_httpcore_exceptions(): │ │ ❱ 250 │ │ │ resp = self._pool.handle_request( │ │ 251 │ │ │ │ 252 │ │ assert isinstance(resp.stream, typing │ │ 253 │ │ │ │ ╭──────────────────── locals ─────────────────────╮ │ │ │ httpcore = <module 'httpcore' from │ │ │ │ '/data/data/com.termux/files/usr/li… │ │ │ │ req = <Request [b'GET']> │ │ │ │ request = <Request('GET', │ │ │ │ 'https://flixhq.to/search/dune')> │ │ │ │ self = <httpx.HTTPTransport object at │ │ │ │ 0x7aacf42930> │ │ │ ╰─────────────────────────────────────────────────╯ │ │ │ │ /data/data/com.termux/files/usr/lib/python3.12/site │ │ -packages/httpcore/_sync/connection_pool.py:256 in │ │ handle_request │ │ │ │ 253 │ │ │ │ closing = self._assign_reques │ │ 254 │ │ │ │ │ 255 │ │ │ self._close_connections(closing) │ │ ❱ 256 │ │ │ raise exc from None │ │ 257 │ │ │ │ 258 │ │ # Return the response. Note that in t │ │ 259 │ │ # the point at which the response is │ │ │ │ ╭──────────────────── locals ─────────────────────╮ │ │ │ closing = [] │ │ │ │ connection = <HTTPConnection [CONNECTION │ │ │ │ FAILED]> │ │ │ │ pool_request = <httpcore._sync.connection_pool… │ │ │ │ object at 0x7aacf42f00> │ │ │ │ request = <Request [b'GET']> │ │ │ │ scheme = 'https' │ │ │ │ self = <ConnectionPool [Requests: 0 │ │ │ │ active, 0 queued | Connections: │ │ │ │ 0 active, 0 idle]> │ │ │ │ timeout = None │ │ │ │ timeouts = { │ │ │ │ │ 'connect': None, │ │ │ │ │ 'read': None, │ │ │ │ │ 'write': None, │ │ │ │ │ 'pool': None │ │ │ │ } │ │ │ ╰─────────────────────────────────────────────────╯ │ │ │ │ /data/data/com.termux/files/usr/lib/python3.12/site │ │ -packages/httpcore/_sync/connection_pool.py:236 in │ │ handle_request │ │ │ │ 233 │ │ │ │ │ │ 234 │ │ │ │ try: │ │ 235 │ │ │ │ │ # Send the request on the │ │ ❱ 236 │ │ │ │ │ response = connection.han │ │ 237 │ │ │ │ │ │ pool_request.request │ │ 238 │ │ │ │ │ ) │ │ 239 │ │ │ │ except ConnectionNotAvailable │ │ │ │ ╭──────────────────── locals ─────────────────────╮ │ │ │ closing = [] │ │ │ │ connection = <HTTPConnection [CONNECTION │ │ │ │ FAILED]> │ │ │ │ pool_request = <httpcore._sync.connection_pool… │ │ │ │ object at 0x7aacf42f00> │ │ │ │ request = <Request [b'GET']> │ │ │ │ scheme = 'https' │ │ │ │ self = <ConnectionPool [Requests: 0 │ │ │ │ active, 0 queued | Connections: │ │ │ │ 0 active, 0 idle]> │ │ │ │ timeout = None │ │ │ │ timeouts = { │ │ │ │ │ 'connect': None, │ │ │ │ │ 'read': None, │ │ │ │ │ 'write': None, │ │ │ │ │ 'pool': None │ │ │ │ } │ │ │ ╰─────────────────────────────────────────────────╯ │ │ │ │ /data/data/com.termux/files/usr/lib/python3.12/site │ │ -packages/httpcore/_sync/connection.py:101 in │ │ handle_request │ │ │ │ 98 │ │ │ │ │ │ ) │ │ 99 │ │ except BaseException as exc: │ │ 100 │ │ │ self._connect_failed = True │ │ ❱ 101 │ │ │ raise exc │ │ 102 │ │ │ │ 103 │ │ return self._connection.handle_reques │ │ 104 │ │ │ │ ╭──────────────────── locals ────────────────────╮ │ │ │ request = <Request [b'GET']> │ │ │ │ self = <HTTPConnection [CONNECTION FAILED]> │ │ │ ╰────────────────────────────────────────────────╯ │ │ │ │ /data/data/com.termux/files/usr/lib/python3.12/site │ │ -packages/httpcore/_sync/connection.py:78 in │ │ handle_request │ │ │ │ 75 │ │ try: │ │ 76 │ │ │ with self._request_lock: │ │ 77 │ │ │ │ if self._connection is None: │ │ ❱ 78 │ │ │ │ │ stream = self._connect(re │ │ 79 │ │ │ │ │ │ │ 80 │ │ │ │ │ ssl_object = stream.get_e │ │ 81 │ │ │ │ │ http2_negotiated = ( │ │ │ │ ╭──────────────────── locals ────────────────────╮ │ │ │ request = <Request [b'GET']> │ │ │ │ self = <HTTPConnection [CONNECTION FAILED]> │ │ │ ╰────────────────────────────────────────────────╯ │ │ │ │ /data/data/com.termux/files/usr/lib/python3.12/site │ │ -packages/httpcore/_sync/connection.py:156 in │ │ _connect │ │ │ │ 153 │ │ │ │ │ │ "timeout": timeout, │ │ 154 │ │ │ │ │ } │ │ 155 │ │ │ │ │ with Trace("start_tls", l │ │ ❱ 156 │ │ │ │ │ │ stream = stream.start │ │ 157 │ │ │ │ │ │ trace.return_value = │ │ 158 │ │ │ │ return stream │ │ 159 │ │ │ except (ConnectError, ConnectTime │ │ │ │ ╭──────────────────── locals ─────────────────────╮ │ │ │ alpn_protocols = ['http/1.1'] │ │ │ │ delays = <generator object │ │ │ │ exponential_backoff at │ │ │ │ 0x7aacf31b10> │ │ │ │ kwargs = { │ │ │ │ │ 'ssl_context': │ │ │ │ <ssl.SSLContext object at │ │ │ │ 0x7aaceff750>, │ │ │ │ │ 'server_hostname': │ │ │ │ 'flixhq.to', │ │ │ │ │ 'timeout': None │ │ │ │ } │ │ │ │ request = <Request [b'GET']> │ │ │ │ retries_left = 0 │ │ │ │ self = <HTTPConnection [CONNECTION │ │ │ │ FAILED]> │ │ │ │ sni_hostname = None │ │ │ │ ssl_context = <ssl.SSLContext object at │ │ │ │ 0x7aaceff750> │ │ │ │ stream = <httpcore._backends.sync.Sync… │ │ │ │ object at 0x7aacf42fc0> │ │ │ │ timeout = None │ │ │ │ timeouts = { │ │ │ │ │ 'connect': None, │ │ │ │ │ 'read': None, │ │ │ │ │ 'write': None, │ │ │ │ │ 'pool': None │ │ │ │ } │ │ │ │ trace = <httpcore._trace.Trace object │ │ │ │ at 0x7aad01adb0> │ │ │ ╰─────────────────────────────────────────────────╯ │ │ │ │ /data/data/com.termux/files/usr/lib/python3.12/site │ │ -packages/httpcore/_backends/sync.py:154 in │ │ start_tls │ │ │ │ 151 │ │ │ socket.timeout: ConnectTimeout, │ │ 152 │ │ │ OSError: ConnectError, │ │ 153 │ │ } │ │ ❱ 154 │ │ with map_exceptions(exc_map): │ │ 155 │ │ │ try: │ │ 156 │ │ │ │ if isinstance(self._sock, ssl │ │ 157 │ │ │ │ │ # If the underlying socke │ │ │ │ ╭──────────────────── locals ─────────────────────╮ │ │ │ exc_map = { │ │ │ │ │ <class 'TimeoutError'>: │ │ │ │ <class │ │ │ │ 'httpcore.ConnectTimeout'>, │ │ │ │ │ <class 'OSError'>: <class │ │ │ │ 'httpcore.ConnectError'> │ │ │ │ } │ │ │ │ self = <httpcore._backends.sync.Syn… │ │ │ │ object at 0x7aacf42fc0> │ │ │ │ server_hostname = 'flixhq.to' │ │ │ │ ssl_context = <ssl.SSLContext object at │ │ │ │ 0x7aaceff750> │ │ │ │ timeout = None │ │ │ ╰─────────────────────────────────────────────────╯ │ │ │ │ /data/data/com.termux/files/usr/lib/python3.12/cont │ │ extlib.py:158 in exit │ │ │ │ 155 │ │ │ │ # tell if we get the same exc │ │ 156 │ │ │ │ value = typ() │ │ 157 │ │ │ try: │ │ ❱ 158 │ │ │ │ self.gen.throw(value) │ │ 159 │ │ │ except StopIteration as exc: │ │ 160 │ │ │ │ # Suppress StopIteration *unl │ │ 161 │ │ │ │ # was passed to throw(). Thi │ │ │ │ ╭──────────────────── locals ─────────────────────╮ │ │ │ self = <contextlib._GeneratorContextManag… │ │ │ │ object at 0x7aace6c2c0> │ │ │ │ traceback = <traceback object at 0x7aacd5d180> │ │ │ │ value = SSLError(1, '[SSL] unknown error │ │ │ │ (_ssl.c:1010)') │ │ │ ╰─────────────────────────────────────────────────╯ │ │ │ │ /data/data/com.termux/files/usr/lib/python3.12/site │ │ -packages/httpcore/_exceptions.py:14 in │ │ map_exceptions │ │ │ │ 11 │ except Exception as exc: # noqa: PIE786 │ │ 12 │ │ for from_exc, to_exc in map.items(): │ │ 13 │ │ │ if isinstance(exc, from_exc): │ │ ❱ 14 │ │ │ │ raise to_exc(exc) from exc │ │ 15 │ │ raise # pragma: nocover │ │ 16 │ │ 17 │ │ │ │ ╭──────────────────── locals ─────────────────────╮ │ │ │ map = { │ │ │ │ │ <class 'TimeoutError'>: <class │ │ │ │ 'httpcore.ConnectTimeout'>, │ │ │ │ │ <class 'OSError'>: <class │ │ │ │ 'httpcore.ConnectError'> │ │ │ │ } │ │ │ ╰─────────────────────────────────────────────────╯ │ ╰─────────────────────────────────────────────────────╯ ConnectError: [SSL] unknown error (_ssl.c:1010)

The above exception was the direct cause of the following exception:

╭───────── Traceback (most recent call last) ─────────╮ │ /data/data/com.termux/files/usr/lib/python3.12/site │ │ -packages/flix_cli/core/flix_cli.py:88 in │ │ search_content │ │ │ │ 85 │ """Search for content on flixhq.to""" │ │ 86 │ try: │ │ 87 │ │ search_params = query.replace(" ", "- │ │ ❱ 88 │ │ response = client.get(f"{FLIXHQ_SEARC │ │ 89 │ │ response.raise_for_status() │ │ 90 │ │ soup = BeautifulSoup(response.text, " │ │ 91 │ │ items = soup.find_all("div", class_=" │ │ │ │ ╭──────────────────── locals ─────────────────────╮ │ │ │ client = <httpx.Client object at │ │ │ │ 0x7aad003440> │ │ │ │ err_msg = 'Search failed: [SSL] unknown │ │ │ │ error (_ssl.c:1010)' │ │ │ │ query = 'dune' │ │ │ │ search_params = 'dune' │ │ │ ╰─────────────────────────────────────────────────╯ │ │ │ │ /data/data/com.termux/files/usr/lib/python3.12/site │ │ -packages/httpx/_client.py:1053 in get │ │ │ │ 1050 │ │ │ │ 1051 │ │ Parameters: See httpx.request. │ │ 1052 │ │ """ │ │ ❱ 1053 │ │ return self.request( │ │ 1054 │ │ │ "GET", │ │ 1055 │ │ │ url, │ │ 1056 │ │ │ params=params, │ │ │ │ ╭──────────────────── locals ─────────────────────╮ │ │ │ auth = <httpx._client.UseClientDef… │ │ │ │ object at 0x7ab74e43b0> │ │ │ │ cookies = None │ │ │ │ extensions = None │ │ │ │ follow_redirects = <httpx._client.UseClientDef… │ │ │ │ object at 0x7ab74e43b0> │ │ │ │ headers = None │ │ │ │ params = None │ │ │ │ self = <httpx.Client object at │ │ │ │ 0x7aad003440> │ │ │ │ timeout = <httpx._client.UseClientDef… │ │ │ │ object at 0x7ab74e43b0> │ │ │ │ url = 'https://flixhq.to/search/d… │ │ │ ╰─────────────────────────────────────────────────╯ │ │ │ │ /data/data/com.termux/files/usr/lib/python3.12/site │ │ -packages/httpx/_client.py:825 in request │ │ │ │ 822 │ │ │ timeout=timeout, │ │ 823 │ │ │ extensions=extensions, │ │ 824 │ │ ) │ │ ❱ 825 │ │ return self.send(request, auth=auth, │ │ 826 │ │ │ 827 │ @contextmanager │ │ 828 │ def stream( │ │ │ │ ╭──────────────────── locals ─────────────────────╮ │ │ │ auth = <httpx._client.UseClientDef… │ │ │ │ object at 0x7ab74e43b0> │ │ │ │ content = None │ │ │ │ cookies = None │ │ │ │ data = None │ │ │ │ extensions = None │ │ │ │ files = None │ │ │ │ follow_redirects = <httpx._client.UseClientDef… │ │ │ │ object at 0x7ab74e43b0> │ │ │ │ headers = None │ │ │ │ json = None │ │ │ │ method = 'GET' │ │ │ │ params = None │ │ │ │ request = <Request('GET', │ │ │ │ 'https://flixhq.to/search/d… │ │ │ │ self = <httpx.Client object at │ │ │ │ 0x7aad003440> │ │ │ │ timeout = <httpx._client.UseClientDef… │ │ │ │ object at 0x7ab74e43b0> │ │ │ │ url = 'https://flixhq.to/search/d… │ │ │ ╰─────────────────────────────────────────────────╯ │ │ │ │ /data/data/com.termux/files/usr/lib/python3.12/site │ │ -packages/httpx/_client.py:914 in send │ │ │ │ 911 │ │ │ │ 912 │ │ auth = self._build_request_auth(requ │ │ 913 │ │ │ │ ❱ 914 │ │ response = self._send_handling_auth( │ │ 915 │ │ │ request, │ │ 916 │ │ │ auth=auth, │ │ 917 │ │ │ follow_redirects=follow_redirect │ │ │ │ ╭──────────────────── locals ─────────────────────╮ │ │ │ auth = <httpx.Auth object at │ │ │ │ 0x7aad5caf90> │ │ │ │ follow_redirects = True │ │ │ │ request = <Request('GET', │ │ │ │ 'https://flixhq.to/search/d… │ │ │ │ self = <httpx.Client object at │ │ │ │ 0x7aad003440> │ │ │ │ stream = False │ │ │ ╰─────────────────────────────────────────────────╯ │ │ │ │

Getting this error while running

Jagadishwar49 avatar Nov 30 '25 20:11 Jagadishwar49