vanhbakaa / Cexio-Tap-bot

Python bot for cex.io telegram bot. Cexio bot
MIT License
53 stars 9 forks source link

Random Device. #9

Closed AlexanderQueen closed 3 weeks ago

AlexanderQueen commented 3 weeks ago

Is it possible to use random devices only from ios? No need ubuntu, windows , android.

vanhbakaa commented 3 weeks ago

use ios to run bot?

AlexanderQueen commented 3 weeks ago

https://github.com/vanhbakaa/Cexio-Tap-bot/blob/main/bot%2Fcore%2Fagents.py

To use as userAgent only iOS or Android devices. You specified windows and Ubuntu too. There's no need in the last too.

vanhbakaa commented 3 weeks ago
import random

def generate_random_user_agent(device_type='ios', browser_type='chrome'):
    chrome_versions = list(range(110, 127))
    firefox_versions = list(range(90, 100))

    if browser_type == 'chrome':
        major_version = random.choice(chrome_versions)
        minor_version = random.randint(0, 9)
        build_version = random.randint(1000, 9999)
        patch_version = random.randint(0, 99)
        browser_version = f"{major_version}.{minor_version}.{build_version}.{patch_version}"
    elif browser_type == 'firefox':
        browser_version = random.choice(firefox_versions)

    elif device_type == 'ios':
        ios_versions = ['13.0', '14.0', '15.0', '16.0']
        ios_version = random.choice(ios_versions)
        if browser_type == 'chrome':
            return (f"Mozilla/5.0 (iPhone; CPU iPhone OS {ios_version.replace('.', '_')} like Mac OS X) "
                    f"AppleWebKit/537.36 (KHTML, like Gecko) CriOS/{browser_version} Mobile/15E148 Safari/604.1")
        elif browser_type == 'firefox':
            return (f"Mozilla/5.0 (iPhone; CPU iPhone OS {ios_version.replace('.', '_')} like Mac OS X) "
                    f"AppleWebKit/605.1.15 (KHTML, like Gecko) FxiOS/{browser_version}.0 Mobile/15E148 Safari/605.1.15")

    return None
put it in your agent.py file
AlexanderQueen commented 3 weeks ago

God bless you 🙏🙏🙏

AlexanderQueen commented 3 weeks ago

File "/opt/cex/bot/core/tapper.py", line 470, in run await self.get_user_info(http_client, authToken) File "/opt/cex/bot/core/tapper.py", line 139, in get_user_info response = await http_client.post(api_profile, json=data) File "/opt/cex/venv/lib/python3.10/site-packages/aiocfscrape/init.py", line 79, in _request resp = await super()._request(method, url, *args, **kwargs) File "/opt/cex/venv/lib/python3.10/site-packages/aiohttp/client.py", line 603, in _request resp = await req.send(conn) File "/opt/cex/venv/lib/python3.10/site-packages/aiohttp/client_reqrep.py", line 713, in send await writer.write_headers(status_line, self.headers) File "/opt/cex/venv/lib/python3.10/site-packages/aiohttp/http_writer.py", line 129, in write_headers buf = _serialize_headers(status_line, headers) File "aiohttp/_http_writer.pyx", line 132, in aiohttp._http_writer._serialize_headers File "aiohttp/_http_writer.pyx", line 109, in aiohttp._http_writer.to_str TypeError: Cannot serialize non-str key None 2024-08-27 20:49:14 | ERROR | 536 - sess1 | Unknown error: Cannot serialize non-str key None