登录账号

登录你的账号

在有道小图灵社区中使用抓包工具获取你的Cookie,它被写在请求头中,十分容易获取。 使用IcodeAPI类构建一个有道小图灵账户。

class IcodeAPI():
    __cookie : str = ''
    userAgent : str = DEFAULT_USER_AGENT
    __info : dict = {}
    client : httpx.Client = None
    __loginStatus = False

    def __init__(
        self, 
        cookie : str = '', 
        userAgent : str = DEFAULT_USER_AGENT, 
        httpxClient : httpx.Client = httpx.Client(), 
        timeout : Union[int, float] = 10
    ):
        self.__cookie = cookie.encode('utf-8')
        self.userAgent = userAgent
        self.client = httpxClient
        self.client.timeout = timeout
        self.login()

__cookie : 账号的cookie,私有成员。 userAgent : 发送请求时使用的UA。 __info : 账号的信息,如果登录失败则为空字典,私有成员。 client : 所使用的httpx连接池。 __loginStatus : 账号登录状态,如果Cookie有效,为真;如果Cookie无效,为假。私有成员。

__init__方法的timeout参数用于设置httpx连接池的连接超时时间,单位为秒。 userAgent参数的默认值为一个icodeapi的全局常量。默认值为:'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36 Edg/115.0.1901.203' 登陆账号示例:

输出内容:

IcodeAPI类实际上使用login方法来使用__cookie成员进行登录,同时,login方法也可以用于在该类上重新登录一个账号,只需要填入一个新的Cookie。 login方法:

login方法会使用self.__cookie进行登录,如果填入了newCookie参数,那么将会使用newCookieself.__cookie进行赋值。 如果检测到Cookie有效,那么会将self.__loginStatus设置为真,将self.__info设置为有道小图灵官方API返回的内容。如果Cookie无效,那么将self.__info设为空字典,并将self.__loginStatus设置为假。返回self.__info。 另外,如果Cookie无效,将会抛出LoginError错误。 self.__info的有效值通常有如下格式:

获取用户信息

如果需要获取已登录账号的信息,可以使用getInfo方法。如果要判断IcodeAPI对象是否已经正确地登录上一个账号,可以使用getLoginStatus方法。 getInfo方法会返回类的__info成员,getLoginStatus方法会返回类的__loginStatus成员。 使用示例

Last updated