Python:TypeError:inet_aton()参数1必须为str,而不是None

问题描述 投票:0回答:1

我正在使用移动游戏API和电报机器人。当我放入固定的Clantag时,它起作用了,但是现在我想让用户编写一个标签并将其添加到链接中。然后,该应用应搜索氏族并获得正确的统计信息。一切正常,但我现在收到此消息,找不到我的错误。如果可以的话,我们将很高兴!

def main():
    last_update_id = None
    message = ""
    while True:
        updates = get_updates(last_update_id)
        if len(updates["result"]) > 0:
            last_update_id = get_last_update_id(updates) + 1
            message = get_last_update_Message(updates)
            clan_stats(updates, message)
def get_last_update_Message(updates):
    message = ""
    for update in updates["result"]:
        message = update["message"]
    return message["text"]
def clan_stats(updates, ID):
    #https://api.royaleapi.com/clan/1RLU78YU
    Link = '"https://api.royaleapi.com/clan/' + ID + '"'

    r=requests.get(Link, headers={"Accept":"application/json",
    "authorization":"Bearer TOKENHERE"})
    clan = r.json()

完整回溯:

Traceback (most recent call last):
  File "/home/Lee63225/clashroyaleclanbot.py", line 188, in <module>
    main()
  File "/home/Lee63225/clashroyaleclanbot.py", line 184, in main
    clan_stats(updates, message)
  File "/home/Lee63225/clashroyaleclanbot.py", line 80, in clan_stats
    "authorization":"Bearer TOKENHERE"})
  File "/usr/lib/python3.7/site-packages/requests/api.py", line 72, in get
    return request('get', url, params=params, **kwargs)
  File "/usr/lib/python3.7/site-packages/requests/api.py", line 58, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/lib/python3.7/site-packages/requests/sessions.py", line 503, in request
    prep.url, proxies, stream, verify, cert
  File "/usr/lib/python3.7/site-packages/requests/sessions.py", line 676, in merge_environment_settings
    env_proxies = get_environ_proxies(url, no_proxy=no_proxy)
  File "/usr/lib/python3.7/site-packages/requests/utils.py", line 760, in get_environ_proxies
    if should_bypass_proxies(url, no_proxy=no_proxy):
File "/usr/lib/python3.7/site-packages/requests/utils.py", line 716, in should_bypass_proxies
    if is_ipv4_address(parsed.hostname):
  File "/usr/lib/python3.7/site-packages/requests/utils.py", line 640, in is_ipv4_address
    socket.inet_aton(string_ip)
TypeError: inet_aton() argument 1 must be str, not None

谢谢!

python python-3.x telegram telegram-bot python-telegram-bot
1个回答
1
投票

我认为它应该是

Link = 'https://api.royaleapi.com/clan/' + ID

尝试中有一些"

但是现在看来,该函数称为clan_stats(update,message)。该“消息”应该是一个笨拙的词,请确保它是正确的(因为它现在来自get_last_update_Message(),并且看起来非常可疑。

© www.soinside.com 2019 - 2024. All rights reserved.