Вроде бы как работает. Должна брать последний id из монго, идти на сайт и парсиить мангу пока не наткнеться на этот id. потом собирать все в файл, а потом пушить в базу.
This commit is contained in:
41
HBD.py
Normal file
41
HBD.py
Normal file
@@ -0,0 +1,41 @@
|
||||
from pymongo import MongoClient
|
||||
|
||||
|
||||
def connect_to_mongo():
|
||||
"""Подключение к MongoDB"""
|
||||
client = MongoClient("mongodb://localhost:27017/")
|
||||
db = client["Manga"]
|
||||
return db["Test"]
|
||||
|
||||
|
||||
def find_doc_with_max_id(collection):
|
||||
"""
|
||||
Находит документ с максимальным значением в поле 'id'
|
||||
и возвращает его 'id' и 'num'
|
||||
"""
|
||||
# Сортируем по убыванию и берем первый документ
|
||||
doc = collection.find_one(
|
||||
{"num": {"$exists": True}},
|
||||
sort=[("num", -1)],
|
||||
projection={"id": 1, "num": 1, "_id": 0}
|
||||
)
|
||||
|
||||
if not doc:
|
||||
return None # Если нет подходящих документов
|
||||
|
||||
return {
|
||||
"id": doc["id"],
|
||||
"num": doc.get("num") # Используем get() на случай отсутствия поля
|
||||
}
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
collection = connect_to_mongo()
|
||||
result = find_doc_with_max_id(collection)
|
||||
|
||||
if result:
|
||||
print(f"Максимальный ID: {result['id']}")
|
||||
print(f"Соответствующий num: {result['num']}")
|
||||
else:
|
||||
print("Документы не найдены или поле 'id' отсутствует")
|
||||
|
||||
Reference in New Issue
Block a user