-2

私はPythonにかなり慣れていないので、誰かが私を助けてくれるかどうか疑問に思っていました.TS3サーバーに管理者がいるかどうかを確認するスクリプトを作成しようとしています. しかし、私は一日中それを理解することはできません。

私が使用する API はここにリンクされています: http://py-ts3.readthedocs.io/en/latest/index.html

    import time
    import ts3


    def admincheck(nickname, id):
        while True:
            client = ts3conn.clientdbfind(pattern=nickname)
            group = ts3conn.servergroupclientlist(sgid=id)
            for client in client:
                print("client db id:\n" + (client["cldbid"]))
            for group in group:
                print("client db ids with admin:\n" + (group["cldbid"]))
                time.sleep(1.5)
            if int(client["cldbid"]) in range(int(group["cldbid"])):
                print("client has admin")
            else:
                print("client does not admin")



    with ts3.query.TS3Connection("localhost") as ts3conn:
            ts3conn.login(
                    client_login_name="serveradmin",
                    client_login_password="<ommited>"
            )
            ts3conn.use(sid=1)
            admincheck("test", "6")

私の問題はこの部分にあると思います:

    if int(client["cldbid"]) in range(int(group["cldbid"])):
            print("client has admin")
        else:
            print("client does not admin")

誰かが助けてくれたら最高です:) よろしくお願いします!

EDIT 私は手元に質問を述べていないので(ここではnoob)、これは出力例です:

    client db id:
    2
    client db ids with admin:
    2
    client db ids with admin:
    3
    client db ids with admin:
    4
    client does not admin

ご覧のとおり、クライアント データベース ID が管理者を持つ ID を持つリスト内のエントリに対応しているにもかかわらず、出力にはクライアントに管理者がいないことが示されています。

4

1 に答える 1