LINUX.ORG.RU

Сообщения theurs

 

danted настройка

сокс сервер danted в дебиане частично не работает. если дергать через curl -x proxy https://2ip.ru работает. а в браузере пишет

Ошибка при установлении защищённого соединения

При соединении с 2ip.ru произошла ошибка.

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


конфиг простейший, разрешающий всё всем
в чем проблема не понятно, каким образом сокс сервер может вмешиваться в https? или на что вообще жалуется браузер


logoutput: syslog
user.privileged: root
user.unprivileged: nobody

# The listening network interface or address.
internal: 0.0.0.0 port=1080

# The proxying network interface or address.
external: eth0

# socks-rules determine what is proxied through the external interface.
socksmethod: none

# client-rules determine who can connect to the internal interface.
clientmethod: none

client pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
}

socks pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
}

 

theurs
()

Автопоиск открытых проксей для чат бота

Gemini Pro от гугла работает не во всех странах, и даже в одной стране может работать тут и не работать там. Чат боту надо как то выживать в таких условиях.

Попробовал реализовать самостоятельно - брать списки проксей с гитхаба и проверять отвечает ли через них. Алгоритм примерно такой:
Если найденный прокси отвечает быстро то он попадает в список годных. Если после этого этот прокси ответил медленно или не ответил то попадает в список удаленных и оттуда уже не возвращается.

Подскажите как это сделать лучше, выше быстрее сильнее.

зы бот тут https://github.com/theurs/tbg
поиск проксей тут в конце https://github.com/theurs/tbg/blob/main/my_gemini.py

Пока что работает это не очень, долго ищутся новые прокси, и найденные отвечают довольно таки медленно.

 python proxy

theurs
()

Как в телеграме отправлять большие файлы?

Предлагали решение - некий локальный сервер https://github.com/tdlib/telegram-bot-api

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

Думал получится сделать второго бота и отдельную группу, что бы второй бот отправлял файл туда, а потом первый бот оттуда копировал куда надо, но... оказалось что первый бот не может скопировать сообщение второго (это потому что боты не видят друг друга?)

Хз что делать, есть еще вариант с использованием бота который притворяется человеком но это как бы запрещено. https://habr.com/ru/articles/348234/
Бан в телеге хуже чем бан в гугле Ж)

 

theurs
()

Какие у телеграма лимиты для ботов на отправку файлов

Что удалось найти - 50мб максимальный размер одного файла. 2000мб всего...

Всего вообще или в одни руки или в сутки или как чего?

 

theurs
()

Регэксп для поиска строк идущих подряд

Надо искать в тексте таблицы типа таких

| Страна | Столица |
| ------ | ------- |
| Франция | Париж |
| Япония | Токио |
| Индия | Нью-Дели |


3 или больше строк идущих подряд, в каждой должно быть 3 или больше символа |


text = """Вот пример таблицы с двумя столбцами

| Страна | Столица |
| ------ | ------- |
| Франция | Париж |
| Япония | Токио |
| Индия | Нью-Дели |

Вот пример таблицы с двумя столбцами
"""
#pattern = r'(.*\|.*\|.*\|.*\n){3,}' # так находит одну строку из конца таблицы
pattern = r'.*\|.*\|.*\|.*\n' # так находит несколько строк (и только если в них ровно 3 |?)

matches = re.findall(pattern, text, flags=re.M)
for table in matches:
    print(table)

 

theurs
()

Обработка русских текстов

Надо делить текст на абзацы и йофицировать. Может кто умеет или может направить больше чем на 3 буквы?

Абзацы можно детектить по \n\n и пробелам или табам в начале строки но это не точно.

Словари для йофикации какие то особые есть?


зы Хочу сделать озвучку книг чуть менее ужасной.

 

theurs
()

Озвучивание книг TTS

Какой на руси лучший способ озвучить книгу с помощью роботов, сайт или сервис какой-нибудь или программа?

Мой телеграм бот может наскрипеть книгу голосом гугла или микрософта но должно же быть что то получше чем слепленное на коленке за 5 минут.

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

Сам скрип от этих роботов меня в принципе устраивает(голос не столь важен), но то как они произносят цифры, сокращения и не русские буквы это кошмар. chatGPT впринципе не способен расставить ударения, и даже просто ёфицировать текст. С разворачиванием сокращений у него тоже есть проблемы.

 tts спв

theurs
()

ChatGPT и другие

Если вдруг кто то еще не наелся этими ботами просьба потестировать (дать отзывы) телеграм бота https://t.me/kun4sun_bot

Там сразу 4 разных чат-бота, chatGPT, Google Bard, Claude, Bing
переключаются командой /config

Плюс всякое разное, рисование по описанию, распознавание текстов с картинок, текстов из аудио и видео, пересказ содержания текстов из веб страниц и роликов на ютубе.

 

theurs
()

Как разрезать хтмл текст не сломав форматирование

1. Телеграм принимает тексты размером до 4к символов
2. Телеграм не принимает хтмл тексты с незакрытыми или испорченными тегами
3. Надо отправлять тексты больше чем 4к символов

Надо как то резать текст и добавлять закрывающие и открывающие теги если разрез произошел внутри тега.

В текстах могут встречаться всего 3 тега

<a></a> - может быть в виде <a href=«»></a> и его наверное нельзя резать, или можно но тогда надо будет создавать 2 одинаковых ссылки с половинками текста, хз

<b></b>

<code><code>

Может есть что то готовое, или подскажите как это надо делать.

 ,

theurs
()

telegram бот может создавать новые темы в чате?

https://core.telegram.org/api/threads

Надо что бы бот сам создавал новые темы (threads). Не могу найти описания как это делать.

 

theurs
()

Как определить, в какой теме в группе телеграмма пришло сообщение

В телеграме есть группы, в группах есть темы, выглядят эти темы как отдельные группы(подгруппы, группы внутри групп), но message.chat.id у всех тем одинаковый, такой же как у главной группы.

Как можно идентифицировать темы в телеботе, нужно что бы бот в разных темах вёл себя по разному, ему надо как то понять что сообщение прилетело не просто в группу ххх, но еще и в тему ууу из этой группы.

Пробовал использовать message.message_thread_id но похоже что это не идентификатор тем а что то другое, это свойство есть у групп у которых нет тем, и может быть разным внутри одной темы, несколько разных в одной теме или группе без тем.

def get_topic_id(message: telebot.types.Message) -> str:
    thread_id = message.message_thread_id
    chat_id = message.chat.id
    return f'[{chat_id}] [{thread_id}]'

 ,

theurs
()

Экранирование маркдауна для телеграма

Телеграм бот на питоне.

Контент генерирует GPT chat, выдает его в каком то маркдауне очень похожем на телеграмовский.

Отправляется с парсером = 'markdown'.

Иногда в тексте появляется что то что вызывает ошибку парсера.

Я в таком случае пытаюсь исправить но явно делаю это не правильно, получается переэкранирование, текст проходит через парсер но в нем появляется много лишних символов \. Я просто не знаю что конкретно не нравится парсеру Ж(

Может есть у кого готовое решение.

def escape_markdown(text):
    """функция для экранирования символов перед отправкой в маркдауне телеграма"""
    pattern = r"([_*\[\]()~|`])"
    return re.sub(pattern, r"\\\1", text)

 ,

theurs
()

usb вайфай не работает WNDA3100v3 MediaTek MT7632U

Помогите попасть в интернет. Я его втыкаю а он не работает. Мы так не договаривались! GPTChat помочь не смог.

dmesg
[57728.085747] usb 1-5: new high-speed USB device number 4 using xhci_hcd
[57728.319649] usb 1-5: New USB device found, idVendor=0846, idProduct=9014, bcdDevice= 1.00
[57728.319656] usb 1-5: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[57728.319658] usb 1-5: Product: WNDA3100v3
[57728.319660] usb 1-5: Manufacturer: MediaTek Inc.
[57728.319662] usb 1-5: SerialNumber: 000000000

lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 04b3:3025 IBM Corp. NetVista Full Width Keyboard
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0846:9014 NetGear, Inc. WNDA3100v3 802.11abgn 2x2:2 [MediaTek MT7632U]
Bus 001 Device 002: ID 09da:c10a A4Tech Co., Ltd. USB Mouse
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

ip a
его там тоже нет

 usb wifi mt7632u

theurs
()

Максимальная длина имени файла

Как на линуксе делают nas для виндоус клиентов если с utf8 длинна русского имени файла не может быть больше 130 символов а японского 80. Может лайфхак какой есть для обхода ограничений?

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

Может есть такая utf кодировка в которой русские буквы 1 байт занимают

 

theurs
()

Proftpd разрешить анонимов только из своей локальной сети

Подскажите как сделать.

 

theurs
()

Что не так с райзенами

Почему G2200 стоит в 2 раза меньше чем аналог от интела i5-7400

 ,

theurs
()

Плохому танцору

Флеш умер, мсофис переехал в облака. Что теперь мешает блицкригу?

 

theurs
()

Странные записи в логе сквида

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

1405396988.600 13121 192.168.254.97 TCP_MISS/200 13852748 GET http://x.x.112.137/msupdate/7%2F6%2F0%2F760B9188-4468-4FAD-909E-4D16FE49AF47%2FruRU%2Famd64%

1405215665.457 6605 192.168.254.10 TCP_MISS/200 7359635 GET http://x.x.112.141/odnoklassniki/30798553261114

1404900322.709 358362 192.168.254.19 TCP_MISS/200 11455283 GET http://x.x.112.11/xvideos-2/03074be72f705b92635ae8d7d272f8eb

theurs
()

squid можно ли отдавать из кеша не проверяя что там с оригиналом

в логе сквида есть много строчек типа

1404692491.402 605 192.168.254.169 TCP_MISS/200 70801 GET http://content8.steampowered.com/depot/573/chunk/25b50f6640ee12efdb77c889f650... - FIRST_UP_PARENT/172.25.165.251 application/x-steam-chunk

и намного меньше таких же но с хитом

в кеше оседают и те и другие, те что с промахом по много одинаковых копий - у них совпадают контрольные суммы и урлы полностью

при попытке качнуть такой урл вгетом получается ответ от сервера 401 - сбой авторизации

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

в конфиге уже есть паттерн для таких урлов, в кеш они попадают но вот с отдачей возникает ошибка авторизации
refresh_pattern http://content[0-9]\.steampowered\.com/depot/.* 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth

 

theurs
()

Конфликт адресов

есть 2 локальные сети с одинаковой адресацией 10.0.0.0/8 и хттп сервер должен работать с ними одновременно, это возможно? как это можно сделать?

не проблема если все клиенты из 1 из сетей будут приходить с 1 виртуального ип адреса

theurs
()

RSS подписка на новые темы