DarkCat09 / python-aternos

[UNMAINTAINED] Unofficial Aternos API written in Python
https://pypi.org/project/python-aternos/
Apache License 2.0
92 stars 13 forks source link

CloudflareChallengeError with valid API key #62

Open nub-rin opened 1 year ago

nub-rin commented 1 year ago

I am still getting the Detected a Cloudflare version 2 Captcha challenge, This feature is not available in the opensource (free) version. in my code, even when I am trying to use the captcha parameter.

pythos-aternos version is 2.1.3 python version is 3.9.15

here is my code

from python_aternos import Client

class Aternos:
    def __init__(self, user, password):
        self.user = user
        self.password = password
        self.login_status = False

    def login(self):
        try:
            self.at_client = Client.from_credentials(self.user, self.password, captcha={
                'provider': 'capmonster',
                'clientKey': '<MY_CAPMONSTER_KEY>'
            })
            self.login_status = True
            return True
        except Exception as e:
            return [False, e]

    def server_list(self):
        if not self.login_status:
            return 'Bot is not logged in Aternos, please use /login first'
        return self.at_client.list_servers()

TEST_USER = '<MY_ATERNOS_USERNAME>'
TEST_PASSWORD = '<MY_ATERNOS_PASSWORD>'

if __name__ == '__main__':
    at = Aternos(TEST_USER, TEST_PASSWORD)
    print(at.login())
DarkCat09 commented 1 year ago

Thanks for reporting! I'll try to fix it.

nub-rin commented 1 year ago

Just checking up, Any updates?

DarkCat09 commented 1 year ago

@nub-rin,

I'm so sorry for the long waiting.

I've noticed that the problem is in re-instantiating CloudScraper session object in atconnect module.
Expect the bugfix tomorrow.

DarkCat09 commented 1 year ago

@nub-rin, @Aeron-Emory,

please, update to the latest v3.0.1:

pip install -U python-aternos

And check if API key works.

nub-rin commented 1 year ago

Alright!, I'll give it a try right now, and let you know if it works or not. ^^

Aeron-Emory commented 1 year ago

I did give it a try as well, but still no luck. All I did was,

# Import
from python_aternos import Client

# Create object
aternos = Client()

aternos.atconn.session.captcha = {
    'provider': '2captcha',
    'api_key': 'apikeyhere',
}

# Log in
# with username and password
aternos.login('usernamehere', 'passwordhere')

# Get servers list
servs = aternos.list_servers()

# Get the first server
myserv = servs[0]

# Start
myserv.start()

The response:

$ python at.py
cloudscraper.exceptions.CloudflareChallengeError: Detected a Cloudflare version 2 Captcha challenge, This feature is not available in the opensource (free) version.
nub-rin commented 1 year ago

Hey @DarkCat09! It didn't even asked for any captcha, in fact the above code is invalid as .from_credentials is not a attribute for the class Client apprently. Regardless the .login() attribute works and I am able to login.

Thanks!