Pull to refresh

Comments 31

Как учебное пособие или результат лабы - отлично (только добавьте py.typed!).

Для реальных задач - отказать:( уж очень много недочётов (например: вычитывает все данные в память, полно fullscan-операций, нет покрытия тестами - test_database.py явно не оно:), нет проверки заявленных версий питона через tox)

В плане недочетов соглашусь, но всему свое время. Сейчас посмотрю, в целом, нужна ли данная библиотека пользователям. Если нужна, то потихоньку недочеты закрою, а если нет, то и так сойдет)

Для каких целей может понадобиться такая странная библиотека? Пример с парсингом не совсем корректный, потому что запись с помощью вашей библиотеки как минимум не параллелизуется.

А для каких задач подходит чистый модуль JSON? Он с коробки как бы не асинхронный. Хочу обратить внимание. Я вообще не выходил за пределы чистого JSON. Или вы будете утверждать что чистый JSON Python нельзя нигде использовать?

При чем здесь синхронный модуль json и параллелизация записи в базу? У вас тут не решена проблема гонок, как ваши парсеры будут одновременно писать в файл?

Понял о чем вы)

Уже выше писал по данному поводу. Если спрос на библиотеку будет - все можно улучшить и дописать. Библиотека же гвоздями не прибита к текущей версии)

Просто будет ли смысл, в целом, время тратить на это, если инструмент окажется никому не нужным. В этом вопрос.

Вот, к примеру. Даже на этот вариант было потрачено достаточно много времени. В целом код, описание и прочее. Уже сейчас публикация получила 2 диза и, насколько я понимаю, не последние.

Можно выделить пару дней. Заморочиться. Прописать в коде вообще все что тут вы и прочие комментаторы предложили, чтоб нарваться на очередной хейт. В чем смысл?)

Сейчас библитоеку стоит расценивать как проба пера - "нужен инструмент" или "не нужен". Лично я для больших парсеров в формате JSON использую MongoDB с библиотекой motor, но а для мелких парсеров и задач по взаимодействию с JSON на Python теперь буду использовать свою библиотеку.

При любом раскладе это удобнее чем чистый JSON и функционала больше. А под запрос от аудитории добавлю в библиотеку новые функции или допилю старые.

В этом и был мой изначальный вопрос, лично я не вижу проблем, которые решает эта библиотека. Вместо нее можно ограничиться одним контекстным менеджером, который будет открывать файл, преобразовывать в словарь и закрывать-записывать.

Ну и да, вот пожалуйста, чисто питоновская микродокументо-ориентированная база.

Скажу честно - не совсем понимаю зачем это на питоне. Но в JSе есть такая необходимость. Например есть такая база как NeDB - несмотря на то что она уже давно не разрабатывается, ее продалжают качать и качать. Потому что далеко не всегда нужна база уровня MySql или MongoDB. К сожалению я даже и не знаю сейчас активной библиотеки на JS которая бы развивалась в этом направлении. Последнее чем пользовался - LokiJS. Нужна она была мне для создания локальной базы для сверки с внешней Api подобной базой и выявления разницы между ними.

Спрос на такие базы не уменьшается, а вот по серьезному поддерживать их особо люди не хотят. Все таки сложное это дело.

Бывают разные задачи в Python и в их рамках часто приходится с JSON взаимодействовать. Как самый яркий пример - это разработка бэкенда для веб-прилождений на Python (FastApi, Flaskи Django). Всё общение по API идет в контексте JSON (как передача, так и обработка данных).

Ещё, по крайней мере в моей практике, часто приходится работать с готовыми JSON файламы.

Кроме того. Не зря же JSON встроенная библиотека)

А в чем отличие js от python в данном контексте? Речь же про js-бэкенд?

Разница в том, что JS может выполнятся на стороне браузера и такие базы работают в том числе и в браузере. JS для таких задач как ложка-вилка)

Ну если таким пользуются на питоне - ок.

Тогда и речь нужно вести о client-side базах и server-side, вопрос то не в языке. В браузере то у вас всегда есть IndexedDB (наверное я правильно понял что это, я довольно далек от фронта). А на сервере всегда и везде есть sqllite (и не только на сервере кстати), который уже и JSON довольно продолжительное время поддерживает.

Библиотека предполагает ETL-подход, но для неструктурированных данных кажется проще использовать ELT (Extract - Load - Transform), т.е. сохранить данные as is в какой-нибудь Postgres в поле с типом json, а потом уже обрабатывать это поле

Т.е. грубо говоря если с помощью библиотеки делаем парсинг json, а потом (как обычно бывает) туда попадают новые ключи \ уходят старые то мы на выходе получим некорректный json. В случае с ELT-подходом просто правим парсер (вместо перезагрузки данных за N-период + так же правки парсера)

Очередная статья от "Опытного Python-разработчика с многолетним стажем" (хотя странно было бы читать статьи по Python от человека, знакомым с ним менее года)

взаимодействием FastAPI и баз данных

Простите, что? FastAPI - роутер, а не ОРМ/драйвер к бд. Я даже не стану говорить, что это должны быть разные и абсолютно не знающие друг о друге компоненты системы, но до таких тем видимо ещё далеко

Допустим, вам нужно парсить большой объем товаров с интернет-магазина

Как это вообще относится к FastAPI? Я ничего не хочу сказать, но мне кажется, вы действительно несколько лет занимались парсингом и созданием ТГ ботов, а неделю назад узнали о существовании FastAPI и Docker

В целом, какой смысл писать данную библиотеку на Python и только для Python? Она же будет весьма медленной и прожерливой по памяти. Такие вещи реализуют на языках без рантайм примочек вроде интерпретации и gc, а затем через FFI используют где хотите, в то же самом Python.

P.s.: очевидный вопрос в стиле "зачем эта либа вообще нужна" задавать не буду, т.к. уже итак все поинтересовались. Может быть всё-таки вернётесь к парсингу инфы с маркетплейсов и ТГ ботам, а не будете продвигать никому не нужный модуль с несколькими CRUD-функциями под видом "классной и универсальной библиотеки". Я понимаю, вы вероятно работали все это время в сфере фриланса и привыкли рекламировать свои решения, какими на самом деле простыми и недалёкими они ни были

В вашем отзыве противоречия. Сначала вы говорите, что я знаком с Python меньше года. Буквально через пару предложений, что я несколько лет занимаюсь созданием ботов и парсингом. Это, по меньшей мере, странно.

Кроме того. Вы достаточно часто появляетесь под моими постами в комментариях. У вас ккакой-то нездоровый интерес к моей персоне? Занимайтесь, пожалуйста, своими вопросами. Надеюсь, что больше вас не увижу

Я знаю, что у вас проблемы, но дислексии не ожидал:

хотя странно было бы читать статьи по Python от человека, знакомым с ним менее года)

Где я здесь говорю, что вы знакомы с Python меньше года? Или вам везде все мерещится? Как например с тем, какая ваша либа - прорыв, а ваши статьи - просвещение

Кроме того. Вы достаточно часто появляетесь под моими постами в комментариях. У вас ккакой-то нездоровый интерес к моей персоне?

Хабр - не рекламная площадка своих услуг, тем более столь примитивных. А по сему есть комментарии, где читатели могут оставить свою критику и обсудить что-либо. Так что стоит прислушиваться к тому, что говорят люди в них, особенно если не только я это говорю.

Как я уже говорил, штамповать материал уровня Хауди Хо или Гоши Дударя и каждый день выпускать по статье, где идея высосана из пальца, а вода сгенерирована с помощью нейросети - это не уровень Хабра, а уровень для привлечения недалёких клиентов, и если вы так делаете, то прямо оскорбляете читателей статей!

Занимайтесь, пожалуйста, своими вопросами. Надеюсь, что больше вас не увижу

Вы даже свой комментарий заканчиваете так, словно общаетесь в торговой или бизнес-среде, о чем мне вообще говорить?

Я вам все сказал. Если вы продолжите мне тут написывать в комментариях это будет говорить не просто про "нездоровый интерес") Тут уже клиника скорее. Знаете. Вот эта вот неразделенная любовь. Ну или все прозаичнее - лично вы никому не интересны. И вот таким образом, как пятилетний ребенок, к себе внимание привлечь пытаетесь. Вот, посмотрите какой я классный)

По этому поводу вот что хочу сказать. Люди, которым есть чем заняться, не будут заходить под каждый второй пост неинтересного им автора и написывать не будут)

Повторюсь. Делом займитесь. Создайте классную программу, напишите приличную статью. Станьте полезным, а не просто человеком, который залетает тут и начинает в непонятную и плохо пахнующую субстанцию обмазывать все и всех. Вот, кармой займитесь своей не знаю, воздухом свежим подышите.

И давайте уже этот срачь в публичную плоскость выносить не будем. Хотите обсудить - пишите в личку. Люди тут информацию полезную найти хотят, а не увидеть очередного знатока с минусовым рейтингом и одним проектом за спиной.

Всего доброго.

Вы продолжаете сыпать красивыми речами, натягивая взятые с неба факты на ваши теории о том, что вокруг вас крутится весь Земной шар:

это будет говорить не просто про "нездоровый интерес") Тут уже клиника скорее. Знаете. Вот эта вот неразделенная любовь. Ну или все прозаичнее - лично вы никому не интересны

Вот тут то как раз всё прозаичнее: вам в лицо выдают поток критики, а вы ее в упор не видите, всячески игнорируете и также нелепо переходите на личности вместо того, чтобы ответить на вопросы.

А теперь пройдемся по реальным фактам, специально для дислексиков:

  1. Вы проигнорировали 2 вопроса и 1 замечание. Но зато расписали свои фантазии о моих проблемах

  2. Вы прочли неверно часть моего комментария и опять что-то надумали. На что я указал на вашу неточность! И это вы тоже проигнорировали

  3. Все мои повторы о том, что Хабр - не площадка для продажи курсов и рекламы своей персоны (тем более с навыками заурядного джунишки) вы также проигнорировали, опять надумав себе, что если вам что-то пишут - значит это от “неразделенной любви”

И теперь я отвечу на оставшуюся критику в адрес моего мнения, как это должны были сделать и вы с моими комментариями (а не выдумывать несуществующие небылицы о человеке, который тратит время на то, чтобы отчистить площадку Хабра от таких посредсвенных пиарщиков себя):

Делом займитесь

Я работаю. И изучаю множество вещей кроме работы. И вынужден натыкаться на ваши детсадовские статьи, которые штампуете каждый день

Создайте классную программу, напишите приличную статью.

Я создал много классных программ, даже без учета того, чем я занимался на работах. Можете ознакомиться c моим профилем на гитхаб

По поводу статей: в отличии от вас я понимаю уровень, на котором должны быть статьи на Хабре. И подхожу к этому очень серьезно, и не штампую статьи из воздуха, как некоторые. Если вы зайдете в мой профиль здесь, то обнаружете заветную статью, к созданию которой я долго шел и над которой я кропотливо работал. Она получилась, вероятно, длинее, чем все ваши статьи вместе взятые (даже без учета нейросетевой воды в ваших статьях), но именно такие полноценные статьи, богато расскрывающие тематику, и должны быть. В конце концов, это статьи, а не ролики в тиктоке типо "пара фактов за одну минуту"

Станьте полезным, а не просто человеком, который залетает тут и начинает в непонятную и плохо пахнующую субстанцию обмазывать все и всех

Моя полезность заключается как раз в том, что я выдаю критику статьям, для этого комментарии и существуют. Хочу видеть Хабр с хорошими статьями, а не тем, каким он стал за последние годы из-за таких вот недалеких писак и инфоцыган с их курсами. Опять же, это не сугубо мое мнение, это мнение многих других сторожил данного просветительсокого портала.

То, что вы можете красиво говорить и генерировать воду нейросетью - это, наверно, хорошо, но на критику тоже надо уметь отвечать. Иначе ваши красивые слова и нагенеренная вода, по сути, ничего не стоят. А отвечать на критику, как на мою, так и на критику других, как можно заметить, вы не умеете

И давайте уже этот срачь в публичную плоскость выносить не будем. Хотите обсудить - пишите в личку

Зачем? Материал публичный - критика тоже должна быть публичной! Иначе смысл теряется.

Повторюсь: Хабр - открытая площадка, где люди деляться своими наработками и идеями, и как в любой другой научной среде, подвергаются критике. Успешная защита своей точки зрения доказывает её право на жизнь

Люди тут информацию полезную найти хотят

Выходит, вы всё-таки понимаете это! Тогда вопрос следующий: зачем вы пишите свои статьи, если они едва ли несут что-то полезное (опять же, не только я так считаю, но и многие другие комментаторы)

очередного знатока с минусовым рейтингом и одним проектом за спиной

Как я уже упомянал, Хабр в последние годы, к сожалению, превратился в площадку для рекламы себя, своих курсов или целых компаний. И люди, вроде вас, часто этим пользуются. Минусовый рейтинг обусловлен как раз тем, что под такими статьями я не пишу “О, какой классный контент, пишите больше, прашу-умоляю!”, а выдаю критику, на которую уже либо вы ответите складно и защитите свою работу перед всем Хабром, либо не защитите и покажите, что признаете наличие явных минусов в вашей работе.

И да, у меня не один проект за спиной, и вы бы поняли это по уровню моих вопросов (если бы их вообще читали, а не сразу строчили комментарии о том, что вас все любят)

Вы явно спутали комментарии Хабра с чатом Доты или фриланс-биржы, где сначала нужно написать о том, как хорошо вы знаете меня лично, а потом - "Всего доброго" или "Надеюсь, что вас больше не увижу"

Может дело не в Хабре, а в вас? Я просил перенести диалог в личку, но вы продолжаете сыпать тут простыни текста. Время на прочтение вашей заветной статьи, которую вы написали 7 января 12 минут. 70% моих статей длинее вашей заветной. Есть и такие что за 20 минут. Это вот вы к чему написали? Померяться длиной хотите?) Ну это точно не ко мне.

Нагенерить нейронкой воды можно хоть на 5 часов прочтения статей, странно использовать это как показатель

Мериться мне не чем, тем более с человеком, который игнорирует вопросы

Извините, но я бы вам рекомендовал подтянуть знания, прежде чем писать статьи с ссылками на ваш тг канал «Легкий путь в Python». Прислушайтесь к критике выше. Хотел сам написать, но это уже сделали за меня

Смысл в том, что если пользователям нужен будет мой контент, то они будут подписываться и переходить в мой телеграмм канал. Если не нужен будет, то они пройдут мимо. Не больше и не меньше.

Смысл в том, что пользователь, особенно в начале пути, с большей вероятностью, не сможет отличить хорошие советы от вредных. По моему, вы не корректно относитесь к конструктивной критике, стараясь защищаться во что бы то ни было. Желаю вам, побольше разобрать "матчасть" и поднабраться опыта, компетенции, только после этого писать статьи с реально полезным контентом :)

Автор статьи лжец и обманщик. Вот и все. Либа - бесполезное дерьмо.

Открыл статью. Долистал до ссылки на репозиторий. Открыл файл с тестами. Не нашёл ни одного теста. До уровня библиотеки это не дотягивает.

Да ну что вы! Он же "Опытный Python-разработчик с многолетним стажем"!

Молодой человек, уймите вы уже свои таланты. Появление вашего логина в комментариях под моими публикациями уже начинает походить на параною. Вы мне не интересны и хватит тут привлекать мое внимание. Займитесь делом уже)

Ведете себя как брошеная девушка. Ходите тут и рассказываете на каждом углу как плохи мои публикации и про свою заветную публикацию ещё.

Да, с Python знаком 1 месяц. Не, вчера вот узнал и думаю, а почему бы не начать писать, а вы меня раскусили. Вывели на чистую воду. Вы победитель. Идите теперь дальше, к другим авторам и выводите их на чистую воду. Очень сильно надеюсь, что больше с вами не пересечемся.

Что только не напишешь чтобы продать своё личное наставничество.

Есть же tinydb с кучей модулей. Зачем заново все придумывать?

Sign up to leave a comment.

Articles