Задать вопрос
  • Как записывать НаборЗаписей регистра сведений внутри цикла?

    @Dementor
    программист, архитектор, аналитик
    С первого взгляда - какая-то чушь. Со второго - еще большая чушь!

    1) Тут два цикла - верхний по всем существующим записям РегистрыСведений.ДанныеСотрудников, а вложенный по всем строкам начиная со второй. Уже это само по себе не имеет смысла, так как выходит, что цель программы - записать в ячейку НомерТС значение из последней строки файла.

    2) Записывать набор записей внутри цикла по его же записям - это ужасная идея!!! Откинем вероятный код из модуля набора записей, который может изменять состав и/или последовательность строк, но и тогда это просто расточительно - на каждом витке цикла записывать одно и то же

    3) Ужасное наименование переменных, чтобы запутать самого себя! Если транспортное средство ищется в базе по первой колонке из файла, то какого лешего ее назвали "Водитель", а не "Транспорт"??? Если в колонку НомерТС записывается значение из второй колонки файла, какого лешего ее назвали "Транспорт", а не "НомерТранспорта"???

    4) Что за странная установка наименования транспортного средства? Если в базе выполняется поиск по наименованию из переменной Водитель (хотя на самом деле там Транспорт), то именно это значение и нужно записать в название, чтобы поиск сработал на следующем витке цикла! А вовсе не сайд-эффекты по справочнику Сотрудников с помощью Справочники.Сотрудники.НайтиПоНаименованию(Водитель):
    4.1) В справочнике Сотрудников может не существовать нужного элемента и в отличии от Транспорта тут нет создания недостающего элемента (в принципе он и не нужен, так как в этом коде справочник "Сотрудники" нигде не используется)
    4.2) Если менять представление в настройках справочник "Сотрудники" и/или в менеджере справочника, то платформа 1С ничего не подскажет о том, что в коде загрузки транспорта может что-то сломаться. Поэтому сайд-эффекты запрещено применять всюду кроме разовых обработок для правки данных, когда риск осознается.

    5) Алгоритм не имеет смысла. Подозреваю, что в файле указан транспорт для существующих пользователей, по которому нужно обновить регистр ДанныеСотрудников. Тогда нужно:
    5.1) Сначала пройти по файлу и сформировать таблицу (можно структуру или соответствие), в которую поместить данные по владению транспортом.
    5.2) В цикле по файлу проверять существование транспорта в базе не по наименованию "моя тайота", а по гос.номеру или по вин-коду.
    5.3) Сотрудника тоже желательно искать не по ФИО, а по табельному номеру, налоговому или паспортному номеру.
    5.4) В регистр ДанныеСотрудников не имеет смысл помещает номер автомобиля - так как все будущие операции потребуют поиск по реквизиту "номер" для каждой строчки! Нужно поместить ссылку на элемент справочника "Транспорт"
    5.5) Имея таблицу (можно структуру или соответствие) из пункта 5.1 проходим циклом по ее строкам, создаем менеджер записи с отбором по Сотруднику-Владельцу, если запись выбирается, то устанавливаем ссылку на транспорт и записываем.
    Ответ написан
    3 комментария
  • Как отслеживать геопозицию в реально времени в телеграмм боте?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Бот не может запросить у пользователя Live Location.
    Пользователь должен сам инициировать отправку Live Location, тогда она периодически будет обновляться через сообщения edited_message, пока не пройдёт заданный пользователем период отслеживания или пользователь сам не остановит отслеживание.
    Ответ написан
    Комментировать
  • Телеграм бот на Python как достать telegram id из @username?

    @Everything_is_bad
    Так пусть будущий администратор напишет боту, так у тебя будет и id, и username. Записывай всё это в бд и через какую-либо админку подтверждай, ну или другой админ должен боту послать username, который будет сопоставлен с данными из базы.
    Ответ написан
  • Как задать команды администраторам чата в частной супергруппе Telegram?

    Узнайте и укажите целочисленный идентификатор вашей группы – например, просто выведите в лог очередной update для бота с сообщением.

    chat_id 	Integer or String 	Unique identifier for the target chat 
    
    or username of the target supergroup (in the format @supergroupusername)


    И, надеюсь, вы прочли, что Command Scopes это только чтобы показывать доступные команды разным группа юзеров. И ничто не мешает рядовому бесправному юзеру прислать боту команду вроде /make_me_admin

    Ответственность только вашего бэкенда – каждый раз проверять, уполномочен ли юзер использовать ту или иную команду, что он прислал.
    Ответ написан
    3 комментария
  • Pytest. Почему декоратор не записывает в файл логи?

    Vindicar
    @Vindicar
    RTFM!
    with tempfile.NamedTemporaryFile(dir=custom_dir, delete=False, mode="w") as temp_file:

    Немедленно по выходу из with файл закроется, и будет удалён.
    Ответ написан
    2 комментария
  • Ошибка BUSINESS_PEER_INVALID в aiogram, как решить?

    @malsem32 Автор вопроса
    Проблема решена, может кому понадобится, нужно поставить ответы на сообщение, там где добавляется бот
    Ответ написан
    Комментировать
  • Как цикл for влияет на формирования списка?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Дело не в цикле for. Функция pair возвращает генератор, а генератор можно обойти только один раз.
    Ответ написан
    Комментировать
  • Где взять полный список городов России в JSON?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Возьмите ФИАС и выдерните из неё данные в любом удобном вам виде.
    Ответ написан
    Комментировать
  • Почему не все упоминания юзеров Telegram кликабельны?

    @twistfire92
    Python backend developer
    Смею предположить, что пользователь, на которого ссылка не кликабельна, с ботом сам еще не общался.
    Во всяком случае я именно с таким сталкивался. Перекинул БД с одного бота на другого, и ссылки на пользователей стали не кликабельными, пока эти пользователи с новым ботом впервые не поздоровались
    Ответ написан
    1 комментарий
  • Какие ошибки в понимании объектов?

    Maksim_64
    @Maksim_64
    Data Analyst
    (3).__class__- здесь объект создался, затем ты обращаешься к его атрибуту.

    3.__class__ - здесь при его создании произошла ошибка (если быть точным даже на стадии парсинга ошибка), питон пытается спарсить, как float, и у него естественно не получается.
    Ответ написан
    Комментировать
  • Как реализовать стартап и сохранить авторское право?

    @rPman
    Идеи стоят мало, если идея ценная - патентуй, как минимум в ее защите тебе поможет государство, но только на территории своей страны,и глобально защиту искать получится очень дорого, только очень ценные идеи этого стоят, что очень редко. Чаще патентуют идеи не для того что бы идею не украли, а что бы защититься от мошенников, которые возьмут вашу идею, запатентую быстрее вас и призовут государство что бы вас 'наказать' (и это очень 'хорошо' работает, к сожалению).

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

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

    p.s. не ищите 'специалиста по ИИ', лучший способ вас обмануть, ведь если что то не получится, это 'не человек виноват а ИИ несовершенен'. Ищите специалиста для решения конкретной задачи.

    p.p.s. вам придется сделать ставку, либо своими деньгами, либо своим временем и 'уникальной идеей', вам придется пойти на риск.
    ----

    Есть замечательная техника, проверенная временем - 'разделяй и властвуй'. Не говорите никому всю информацию целиком, разделяйте ее, каждому сообщайте ровно столько, сколько нужно для решения задачи.
    Ответ написан
    21 комментарий
  • Как правильно спроектировать микросервисную архитектуру?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Правильно для чего именно? Прежде, чем что-то проектировать надо определиться с конкретными требованиями вашей задачи. И уже исходя из требований и ограничений проектировать архитектуру и прочее. Если требования неизвестны, то делается минимальный прототип, испытывается, результат записывается, анализируется и делаются какие-то выводы. При отсутствии результата - прототип допиливается до MVP и так далее. И вот уже по этим выводам принимаются какие-то решения - сделать другую архитектуру, изменить что-то в текущей архитектуре, как-то её дополнить/доработать или оставить как есть.
    Ответ написан
    4 комментария
  • Как исправить ошибку тг бота?

    Lord_of_Rings
    @Lord_of_Rings Куратор тега Python
    Дунадан - северный странник. Злой, но очень добрый
    YouTube ужесточил политику в отношении пользователей, которые скачивают видео "без разрешения". Самый правильный вариант - это генерация poToken, но это достаточно трудоёмкое занятие. Сейчас разработчик и команда неравнодушных пользователей (в числе которых и я) думают над решением этой проблемы.
    Пока нашли такое решение-костыль:
    1. Заходите в папку где хранится pytubefix. Обычно это
    C:\Users\<User>\AppData\Local\Programs\Python<version>\Lib\site-packages\pytubefix

    2. Идете в __main__.py
    3. Там находите функцию check_availability и убираете (просто удаляете) вот этот кусок кода:
    elif reason == (
        'Sign in to confirm you’re not a bot'
    ):
        raise exceptions.BotDetection(video_id=self.video_id)

    Все должно заработать
    Ответ написан
    2 комментария
  • Как принимать деньги от физиков и передавать их другим людям онлайн без юрлица или ИП?

    vabka
    @vabka Куратор тега Веб-разработка
    1. Юридическое лицо обязательно придется завести

    2. Налоговая в любом случае увидит тут признаки дохода и ты будешь обязан взимать НДФЛ с исполнителей, как налоговый агент.
    Вот и требование отчитываться в налоговую.
    Вот тебе, получается, нужно узнавать полные данные и ИНН исполнителей.
    Вот и закон о персональных данных кокетливо машет рукой, а РКН ждёт от тебя стопку бумаг о том, как ты с этими ПД работаешь и как защищаешь. Очень возможно, что придётся ещё потратиться, чтобы всем требованиям соответствовать.

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

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

    Без юридического лица можно попробовать крипту, но тут тоже есть нюансы, начиная опять же с комиссий(говорят есть варианты с небольшой комиссией) и волатильности (по идее есть стейблкоины, но и они умеют обваливаться), заканчивая серым статусом, зато всего остального получится избежать.
    Ответ написан
    14 комментариев
  • Можно ли как то связать два разных банка из разных стран в одном проекте?

    Wispik
    @Wispik
    Спрашивать у пользователя, хочет он оплатить российской картой или нет. И в зависимости от ответа перекидывать на нужный банк
    Ответ написан
    Комментировать
  • Как сделать всплывающее на несколько секунд окно после нажатия на кнопку в тг боте на Python?

    Lord_of_Rings
    @Lord_of_Rings
    Дунадан - северный странник. Злой, но очень добрый
    Когда уже научитесь доки читать?
    bot.answer_callback_query(call.id, text="Ваше сообщение")

    show_alert вам не нужен
    Ответ написан
  • Не могу доделать Chat GPT бот для Телеграмма, в чем проблема?

    Lord_of_Rings
    @Lord_of_Rings Куратор тега Python
    Дунадан - северный странник. Злой, но очень добрый
    Потому что автор сам дурак, не проверил код перед тем как его выкладывать. У него модуль threading не импортирован. Добавьте в начале файла import threading и всё будет ОК
    Ответ написан
    1 комментарий
  • TypeError: __init__() takes 1 positional argument but 2 were given у меня проект на aiogram плюс sqlalhemy ,но я совсем недавно начал?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега SQLAlchemy
    Седой и строгий
    Ошибка подчёркнута же в бэктрейсе, чего её искать? Что по вашему делает строка User(tg_id == tg_id)?
    Ответ написан
    1 комментарий
  • TypeError: __init__() takes 1 positional argument but 2 were given у меня проект на aiogram плюс sqlalhemy ,но я совсем недавно начал?

    Lord_of_Rings
    @Lord_of_Rings
    Дунадан - северный странник. Злой, но очень добрый
    и не говорить мне учиться
    Именно это я и скажу. Мы должны все разжевать и вам в рот положить?
    но я совсем недавно начал
    Это не даёт вам права не учиться
    прошу найти именно ошибку
    Вот именно поэтому, я и посылаю вас учиться.
    я уже задавал этот вопрос
    А это чревато его удалением или даже баном.

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

    @Redeve
    Веб-макаке не хватит и 640гБ
    Создайте один общий хендлер - точку входа для текстовых (всмысле - не для /команд) сообщений, которые не обработались другими хендлерами. И в словаре определите что за что должно отвечать

    что-то типа такого
    def text_handler(...): # <<<  этот хендлер регистрируем
        secondary_handlers = {
            "О нас": about_us,
            "Чем займемся?": whats_next,
            "текст": handler_for_text
        }
        if handler := secondary_handlers.get(message.text):
            handler(message)
    
    def about_us(...): ... # < а эти нет
    def whats_next(...): ...


    удобство такого варианта - список и точку входа определяем в условном bot.py, а обработчики для них можно импортировать откуда угодно
    Ответ написан
    Комментировать