Vikigo
это то что я там накалякал
Vikigo
я походу забыл убрать параметры которые ссылаются на фтп?
Sergey
Есть вопрос по поводу SQLAlchemy: мне хочется реализовать на основе базы с посттгресом неявный поиск (т.е. на основе вбиваемой пользователем строки, потенциально включающей содержание нескольких полей одновременно и в строковой форме). Есть ли какие-то источники, где можно посмотреть на возможный подход?
Ihor 🐈
Если у кого есть свободные 2 минуты, взгляните, пожалуйста https://pastebin.com/uw8P31Sg Соответсвует ли этот сниппет паттерну "фабрика"?
Vikigo
Собственно весь репорт оригинала, я сначала думал что его достаточно подкорректировать, но нет его нужно полностью перелопатить, как понять что идет к нему? html_name, data и time? Или у меня лыжи не едут?)
Nikolay
Из того, что тебе интересно
Vikigo
В шаблоне у тебя будут доступны только categories и time
'''def write_csv(data): with open('websites.csv', 'a') as f: order = ['categories', ' time'] writer = csv.DictWriter(f, fieldnames=order)'''
Vikigo
как то так?
Nikolay
With open(output_filrname, 'wb') as fp: writer = csv....
løst
может это он так FTS обозвал?
Oleg
может это он так FTS обозвал?
скорее всего, но мало ли
løst
хотя по описанию похоже на конструирование запроса с произвольным кол-вом аргументов в where clause
løst
левенштейн это всё же нечёткий поиск...
Oleg
левенштейн это всё же нечёткий поиск...
ну да, fuzzy, я поэтому и уточнил, вдруг он перепутал неявный и нечеткий
Sergey
Что значит неявный поиск? Что-нибудь типа расстояния Левенштейна?
Левенштейн и есть, все верно. С нечетким я перепутал
løst
ну так тогда orm не при делах, придётся писать отдельную ебалайку на основе выгребаемых результатов
Oleg
Левенштейн и есть, все верно. С нечетким я перепутал
ну тогда: https://www.postgresql.org/docs/current/fuzzystrmatch.html
Sergey
ну тогда: https://www.postgresql.org/docs/current/fuzzystrmatch.html
Это уже видел, мне хочется запаковать поиск в приложение на фласке.
løst
интересно как оно в pg работает
Oleg
интересно как оно в pg работает
я с недоверием отношусь к подобным штукам в постгре. Я бы эластик брал
Sergey
Сейчас вижу вариант с pyscopg2 в качестве посредника между постгресом и питоном. База уже сейчас на постгресе висит, никуда не деться от этого.
Tishka17
не всегда надо все в одной базе делать
Tishka17
у нас собственно эластик для поиска + постгрес для всех данных
Oleg
обычно все так и делают, источник правды в какой-нибудь базе, а поиск в эластике
Tishka17
да для начала пусть будет постгрес
Tishka17
начнутся тормоза перепишут
Sergey
Будет время - ткну людей в косяки, пообещаю исправить через эластик.
Oleg
В постгресе как-то все слишком сложно с поиском и, на сколько я знаю, довольно медленно работает
Artyem
В постгресе как-то все слишком сложно с поиском и, на сколько я знаю, довольно медленно работает
он там очень низкоуровневый, но в сторону упрощения подвижки есть. допустим в 11 появилась https://habr.com/ru/company/postgrespro/blog/353848/ websearch_to_tsquery в простых случаях хватает и обычного ILIKE, с построенным gist/gin индексом по полю(полям)
Timur
Здравствуйте! Я тут новичок, прошу помочь. Необходимо прописать код даты и времени для автовебинара на одностраничный сайт. Пример: человек, зашедший на страницу регистрации на вебинар 15 апреля, видит, что вебинар будет 18 апреля. И обратный отсчёт времени. Человек, зашедший 18 апреля, видит дату 21 апреля и т.д. Сайт создан на обычном конструкторе сайтов.
Tishka17
Эм
Andrew
Ему нужен яваскриптовый трехстрочный велосипед, очевидно
Timur
Простите, если попал не по адресу. Буду благодарен, если подскажите куда лучше обратиться, так как в этой теме я полный нуль! Я не разработчик, хочу найти человека, с кем буду сотрудничать по этой теме.
Tishka17
Хз, попробуй погуглить по названию конструктора сайтов или потыкать js разработчиков
Artemii
Тишка хуйни не скажет
Artemii
Sergey
Снова я по своему нечеткому: нашел такой вот метод http://blog.keyrus.co.uk/fuzzy_matching_101_part_i.html . Не совсем понятно, как подцепить его к моей ситуации - поиску по строке, которая может включать в себя в искаженном виде значения сразу нескольких полей.
Sergey
Можно сделать лихой джойн всех полей по определенному id в новую колонку и сверять входную строку уже с ним. Не сломается ли все от такого решения и есть ли менее грубые способы?
Oleg
Тебе точно это надо?
Tishka17
воу воу
Oleg
наркомания какая-то
Anonymous
воу воу
Girl girl
Oleg
Можно формулировку задачи ещё раз?
Он хочет сделать поиск по расстоянию левенштейна в постгресе, и обязательно делать эти запросы через sqlalchemy
Tishka17
https://gist.github.com/nepsilon/383bb294234579048bba
Oleg
https://gist.github.com/nepsilon/383bb294234579048bba
да уже кидали ссылку на доку постгреса
Sergey
Можно формулировку задачи ещё раз?
Есть веб-приложение на фласке, пользователь вбивает в поиск строку. По строке ведется нечеткий поиск внутри таблицы базы данных и выводятся подходящие записи. Строка включает в себя возможные значения нескольких полей (т.е. простой поиск на соответствие строки, например, имени не подойдет), иногда с искажениями.
Oleg
Завести под это elasticsearch не?
это первое что предложили ))
Sergey
Завести под это elasticsearch не?
Уже предлагали, но тут хотят на постгресе ¯\_(ツ)_/¯
Sergey
чем аргументируют?
В следующий раз с клиентом пообщаться можно будет только завтра, послезавтра сдавать, клиент просил на постгресе.
Tishka17
дайте угадаю: “да нафиг нам лишняя зависимость, кто её администрировать будет, вот если постгрес не будет справляться можно посмотреть, но все эти nosql какая-то фигня”
Pavel
чем аргументируют?
врожденным скудоумием. хотя можно конечно постгрес с его fuzzystrmatch, но вероятно будет не шибко шустро
Tigran
Уже предлагали, но тут хотят на постгресе ¯\_(ツ)_/¯
В тред приглашается @jerunman со своим постгресом
Pavel
объем данных то какой? сколько записей, которые придётся перемалывать?
Oleg
врожденным скудоумием. хотя можно конечно постгрес с его fuzzystrmatch, но вероятно будет не шибко шустро
ну топикстартеру уже кидали ссылку на fuzzystrmatch, он через час вернулся с вариантом загружать все данные в pandas
Oleg
Снова я по своему нечеткому: нашел такой вот метод http://blog.keyrus.co.uk/fuzzy_matching_101_part_i.html . Не совсем понятно, как подцепить его к моей ситуации - поиску по строке, которая может включать в себя в искаженном виде значения сразу нескольких полей.
Tolibjon