Alex
Добрый вечер. Наткнулся на файл icp_op.so. Ничем не открывается. В гугле хорошего описания не нашёл. Что это такое?
lbh
в некотором смысле то же что и dll
Nikolay
shared object
Alex
в некотором смысле то же что и dll
А её можно как-то самому сгенерить? Мой скрипт её отказывается видеть, говорит "No such file or directory", хотя ну лежим она там, проверял
Alex
>>> path = '/home/alex/vid2depth/ops/Icp_op.so' >>> icp = tf.load_op_library(path)
Alex
А получаю: Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/alex/.local/lib/python3.6/site-packages/tensorflow/python/framework/load_library.py", line 56, in load_op_library lib_handle = py_tf.TF_LoadLibrary(library_filename) tensorflow.python.framework.errors_impl.NotFoundError: libboost_system.so.1.65.1: cannot open shared object file: No such file or directory
Alex
команда ls: alex@alex-PC:~/vid2depth/ops$ ls Icp_op.so icp_op.py
Alex
либа libboost-system отсутствует в системе.
sudo apt-get install libboost-dev libboost-system-dev libboost-filesystem-dev libboost-thread-dev Поможет?
Влад
sudo apt install libboost-system1.65.1
Alex
sudo apt install libboost-system1.65.1 [sudo] password for alex: Reading package lists... Done Building dependency tree Reading state information... Done N: Ignoring file '20auto-upgrades.ucf-dist' in directory '/etc/apt/apt.conf.d/' as it has an invalid filename extension E: Unable to locate package libboost-system1.65.1 E: Couldn't find any package by glob 'libboost-system1.65.1' E: Couldn't find any package by regex 'libboost-system1.65.1'
Влад
Ну хз, в репах бубунты 18.04 лежит.
Spruts
Подскажите Как заменить тег <br> на строку 'TEXT' soup = BeautifulSoup(html, 'html.parser') pages = soup.findAll('h1')[1] #возвращает <h1><br></h1>
🍁 Jaŭhien
soup.findAll('h1')[0].text
Ivy
Всем привет(
Ivy
)
🍁 Jaŭhien
Co(n)stantine👨‍🔬
Ivy
И сразу тишина😏
Spruts
Тебе текст нужен?
Нужно, что бы заменялся элемент на странице html
Sergey
Привет, ребят! Пожалуйста укажите на мои промахи https://github.com/Codeavr/addemojibot
Sergey
Подробней опиши задачу
Прощу посмотреть код и сказать, где я делаю плохо
Sergey
🙏 do this
Co(n)stantine👨‍🔬
what are 👉 doing
Co(n)stantine👨‍🔬
yandex_translate_api☹️
Sergey
yandex_translate_api☹️
Поясни, пожалуйста
Sergey
Co(n)stantine👨‍🔬
Поясни, пожалуйста
у них же лимиты, долго не проработает бот
Spruts
Подробней опиши задачу
Скрипт парисит страницу, находит в ней тег <h1> в нем заменяет имеющийся элемент на нужный, в моем случае тэг <br> на строку TEXT после на странице нажимаятся кнопка ввода и изменения ссохраняются
Tishka17
Да? Я думал это будет лишним
Ну как минимум лучше разделить питоновские сорцы и техническин файлы
🍁 Jaŭhien
И не совсем понял про сохранение
Co(n)stantine👨‍🔬
хотя 10 000 000 символов неплохо в месяц вродь
Sergey
у них же лимиты, долго не проработает бот
Я думаю уберу потом если понадобится, пока просто кейс. Я сначала просто хотел использовать их переводчик в Emoji сразу. Но оказалось, что у них в апи нельзя использовать перевод на эмодзи 😢
Sergey
Ну как минимум лучше разделить питоновские сорцы и техническин файлы
А не скинешь, пожалуйста, почитать что-нибудь о такой практике в питоне?
Sergey
Оки
Tishka17
Ну это скорее не к питону, а вообще
Tishka17
Удобнее когда исходники в одной папке, всякие скрипты сборки в другой
Tishka17
Меньше везни со всякими dockerignore
Co(n)stantine👨‍🔬
Оки
код не смотрел, а ты гдет сохраняешь перевод? чтоб не делать 100 запросов к API на слово this например? а что если превысишь лимит — кол-во запросов к API считаешь? пользователь об этом узнает? Ну тип, сорян чувак, не сомгу перевести, задонать на поддержку бота и подписки на платное API Yandex. Translate🤔
🍁 Jaŭhien
было бы неплохо добавить обработку ошибок
Sergey
код не смотрел, а ты гдет сохраняешь перевод? чтоб не делать 100 запросов к API на слово this например? а что если превысишь лимит — кол-во запросов к API считаешь? пользователь об этом узнает? Ну тип, сорян чувак, не сомгу перевести, задонать на поддержку бота и подписки на платное API Yandex. Translate🤔
Не кеширую, но идея хорошая, спасибо. Надо подумать об этом. Единственное что меня смущает, что слова же не по отдельности переводятся, а в каком-то контексте, так разве что кешировать целые предложения/сообщения. Например для привет будет эффективно очень
🍁 Jaŭhien
А то при запросах всякое может случиться
Co(n)stantine👨‍🔬
Sergey
было бы неплохо добавить обработку ошибок
Справедливо, пока не думал об этом
Co(n)stantine👨‍🔬
Справедливо, пока не думал об этом
https://tech.yandex.ru/translate/doc/dg/reference/translate-docpage/#codes
Sergey
Co(n)stantine👨‍🔬
🤔возможно, но и это над обрабатывать
Co(n)stantine👨‍🔬
а то как заблокируют API-ключ
Sergey
🤔возможно, но и это над обрабатывать
if response['code'] == 200: return response['text'][0] return '😩' 😏
Sergey
Я понял о чем ты, например про суточные лимиты
Sergey
Я не думаю, что такое произойдет
🍁 Jaŭhien
Я не думаю, что такое произойдет
Что должна делать функция all_chars_are_latin?
Sergey
Что должна делать функция all_chars_are_latin?
Являются ли все все буквы в слове латинскими
Sergey
не самое удачное название, согласен
🍁 Jaŭhien
не самое удачное название, согласен
Да нет, нормальное, только там какие-то проверки странные
🍁 Jaŭhien
Сделай лучше так: import string latins = set(string.ascii_letters) def all_chars_are_latins(text): return set(text) <= latins
🍁 Jaŭhien
Ну и замыкание так себе выглядит, лучше без него, конечно
Sergey
Сделай лучше так: import string latins = set(string.ascii_letters) def all_chars_are_latins(text): return set(text) <= latins
Выглядит красиво, но мне религия не позволит аллоцировать множество чтобы его потом выкинуть...
Fᴏʀᴅᴇɴ
можно как то шерить между соседними файлами пулы соединений? создаю в начале файла пул соединений редиса, а потом в каждой функции вызываю проблема в том что нужно некоторые пулы использовать сразу в 2 (и больше) классах, которые лежат в другом файле есть способ это сделать более элегантно, чем создавать некий файл consts.py где создавать пулы соединений и потом импортами шерить?
Sergey
Ну и замыкание так себе выглядит, лучше без него, конечно
А где там замыкание? Я просто не функциональщик
🍁 Jaŭhien
Выглядит красиво, но мне религия не позволит аллоцировать множество чтобы его потом выкинуть...
Можно и без множества, all(ch in latins for ch in text), но с множеством будет быстрей
🍁 Jaŭhien
Почему быстрее?
https://pastebin.com/hGnsNHNb
Anonymous
Здравствуйте, чат только для профессионалов?
helsingf♂rce
да, для профессиональных профессионалов
helsingf♂rce
я много где
Anonymous
Твои рофлы
Anonymous
...