Ошибка sqlite3.OperationalError: database is locked
import time
import utils
from pyrogram import Client
from pyrogram import types
from pyrogram.raw import functions
from pyrogram.errors import FloodWait
from collections import namedtuple
USER = namedtuple('User', ['username', 'name', 'about'])
app = Client("my_bot")
target = input('username чата без "@": ') # Целевой канал/супергруппа
users = [] # Список, который будет содержать всех пользователей целевого чата
limit = 1000000 # Количество пользователей, которые нужно получить для каждого вызова API
offset = 0 # Смещение начинается с 0
app.start()
while True:
try:
participants = app.send(
functions.channels.GetParticipants(
channel=app.resolve_peer(target),
filter=types.ChannelParticipantsSearch(""), # Фильтровать по пустой строке (искать все)
offset=offset,
limit=limit,
hash=0
)
)
except FloodWait as e:
# Очень большие каналы вызовут FloodWait.
# Когда это произойдет, подождите X секунд, прежде чем продолжить
time.sleep(e.x)
continue
if not participants.participants:
break # Участников больше не осталось
for i in participants.users:
full_user = app.send(
functions.users.GetFullUser(
app.resolve_peer(i.id)
)
)
username = full_user.user.username
identifier = f'@{username}' if username else full_user.user.id
users.append(USER(identifier, full_user.user.first_name, full_user.about))
time.sleep(1)
offset += limit
utils.dump_data(users)
app.stop()
вот такой код для изъятия инфы о пользователей нашел на гитхабе репозиторий но когда запускаю выдает ошибку как sqlite3.OperationalError: database is locked что делать не знаю