首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pyrogram客户端从错误开始(sqlite)

Pyrogram客户端从错误开始(sqlite)
EN

Stack Overflow用户
提问于 2022-06-13 13:22:02
回答 1查看 275关注 0票数 0

我在开始做热图客户上有个问题。

我在https://my.telegram.org/中创建了一个应用程序,并从那里复制了creds。

现在我开始客户端:

代码语言:javascript
复制
from pyrogram import Client


client = Client(
    "occasion",
    api_id=os.environ.get('TG_API_ID'), 
    api_hash=os.environ.get('TG_API_HASH')
)

client.start()
client.send_message('me', 'some_message_text')
client.stop()

并在字符串client.start()处引发一个错误。

错误说:

代码语言:javascript
复制
Traceback (most recent call last):
  File "C:\Users\Artur_Epremian\AppData\Local\Programs\Python\Python310\lib\code.py", line 90, in runcode
    exec(code, self.locals)
  File "<input>", line 1, in <module>
  File "C:\Users\Artur_Epremian\AppData\Local\pypoetry\Cache\virtualenvs\occasion-back-UNW6TZnG-py3.10\lib\site-packages\pyrogram\sync.py", line 66, in async_to_sync_wrap
    return loop.run_until_complete(coroutine)
  File "C:\Users\Artur_Epremian\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 646, in run_until_complete
    return future.result()
  File "C:\Users\Artur_Epremian\AppData\Local\pypoetry\Cache\virtualenvs\occasion-back-UNW6TZnG-py3.10\lib\site-packages\pyrogram\methods\utilities\start.py", line 58, in start
    is_authorized = await self.connect()
  File "C:\Users\Artur_Epremian\AppData\Local\pypoetry\Cache\virtualenvs\occasion-back-UNW6TZnG-py3.10\lib\site-packages\pyrogram\methods\auth\connect.py", line 40, in connect
    await self.load_session()
  File "C:\Users\Artur_Epremian\AppData\Local\pypoetry\Cache\virtualenvs\occasion-back-UNW6TZnG-py3.10\lib\site-packages\pyrogram\client.py", line 564, in load_session
    await self.storage.open()
  File "C:\Users\Artur_Epremian\AppData\Local\pypoetry\Cache\virtualenvs\occasion-back-UNW6TZnG-py3.10\lib\site-packages\pyrogram\storage\file_storage.py", line 58, in open
    self.conn = sqlite3.connect(str(path), timeout=1, check_same_thread=False)
sqlite3.OperationalError: unable to open database file

你能帮我找出原因吗?

EN

回答 1

Stack Overflow用户

发布于 2022-06-13 14:14:10

所以我的问题是,在我开始一个会话之前,我在应用程序(django)中做了这件事。因此,如果您看到这个问题,您应该手动启动会话(从终端、python控制台等)。用你的证件:

代码语言:javascript
复制
client = Client('name', api_id='', api_hash='')
client.start()  # here it will ask you to enter your phone number and confirmation code
client.export_session_string() 

# ->  and here you will get a string, save it in credentials too

client.stop()

在您保存会话字符串之后,您可以运行应用程序,您只需在客户端中传递参数session_string即可。

代码语言:javascript
复制
client = Client(
    "occasion",
    api_id=os.environ.get('TG_API_ID'), 
    api_hash=os.environ.get('TG_API_HASH'),
    session_string=os.environ.get('TG_SESSION_STRING')
)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72603614

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档