小编And*_*rey的帖子

在固定装置中包含代码后,使用 asyncio 进行 pytest 时出现 AttributeError

我需要测试我的电报机器人。为此,我需要创建客户端用户来询问我的机器人。我找到了可以做到这一点的电视马拉松图书馆。首先,我编写了一个代码示例以确保授权和连接正常工作并向自己发送测试消息(省略导入):

api_id = int(os.getenv("TELEGRAM_APP_ID"))
api_hash = os.getenv("TELEGRAM_APP_HASH")
session_str = os.getenv("TELETHON_SESSION")

async def main():
    client = TelegramClient(
        StringSession(session_str), api_id, api_hash,
        sequential_updates=True
    )
    await client.connect()
    async with client.conversation("@someuser") as conv:
        await conv.send_message('Hey, what is your name?')


if __name__ == "__main__":
    asyncio.run(main())
Run Code Online (Sandbox Code Playgroud)

@someuser(我)成功收到消息。好的,现在我根据上面的代码使用固定装置创建一个测试:

api_id = int(os.getenv("TELEGRAM_APP_ID"))
api_hash = os.getenv("TELEGRAM_APP_HASH")
session_str = os.getenv("TELETHON_SESSION")

@pytest.fixture(scope="session")
async def client():
    client = TelegramClient(
        StringSession(session_str), api_id, api_hash,
        sequential_updates=True
    )
    await client.connect()
    yield client
    await client.disconnect()


@pytest.mark.asyncio
async def test_start(client: TelegramClient):
    async with client.conversation("@someuser") as conv:
        await …
Run Code Online (Sandbox Code Playgroud)

python pytest python-asyncio telethon

16
推荐指数
2
解决办法
1万
查看次数

KeyError:Python Instagram API客户端的"数据"

我使用这个客户端python-instagramPython 3.4.3MacOS.

我的步骤:

  • 注册了一个新客户端instagram,收到了client_id和client_secret
  • Pip安装python-instagram
  • 将sample_app.py复制到我的mac

我按照说明操作client_id,我通过instagram成功授权我的应用程序并尝试了这个示例列表,但没有一个有效.点击后,我会点击client_secretAPI请求更改的标题和计数器python-instagram.

如果我试图在我的终端中显示sample_app.py异常Sample app.如果我删除<h2>构造,留下块Remaining API Calls = 486/500,当我看到'错误:500内部服务器错误'.

这是追溯:

Traceback (most recent call last):
File "/Users/user/.envs/insta/lib/python3.4/site-packages/bottle.py", line 862, in _handle
return route.call(**args)
File "/Users/user/.envs/insta/lib/python3.4/site-packages/bottle.py", line 1732, in wrapper
rv = callback(*a, **ka)
File "sample_app.py", line 79, in on_recent
recent_media, next = api.user_recent_media()
File "/Users/user/.envs/insta/lib/python3.4/site-packages/instagram/bind.py", line 197, in _call
return method.execute()
File …
Run Code Online (Sandbox Code Playgroud)

python instagram keyerror instagram-api

11
推荐指数
2
解决办法
3598
查看次数