Задать вопрос
  • Как в git локально заигнорить папку так чтобы при ее последующем изменении она больше не попадала в индекс?

    Lobotomist
    @Lobotomist
    Software Developer
    Вообще ситуация выглядит странно и node_modules скорее всего из репозитория надо убирать. Далее по сути вопроса.

    Для того, чтобы новые модули не отслеживались гитом самый простой вариант добавить их игнорирование для конкретного репозитория (будет работать только для вашего локального репозитория) в файл .git/info/exclude написать:
    node_modules/*

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

    Сложнее в случае, если вы изменяете уже отслеживаемые гитом файлы модулей. Чтобы ваши изменения не отслеживались гитом можно сказать ему, чтобы он игнорировал изменения в них. Для этого есть команда git update-index --skip-worktree <path>. Можно выполнить ее сразу для всех файлов в папке node_modules, а можно выборочно только для тех которые фактически изменены.

    # для всех
    git ls-files node_modules | xargs git update-index --skip-worktree
    # для измененных
    git ls-files -m node_modules | xargs git update-index --skip-worktree

    git ls-files node_modules - выводит список файлов, отслеживаемых гитом в папке node_modules, с ключом -m только те, которые модифицированы.
    xargs - выполняет соответствующую команду для каждого из этих файлов.
    Ответ написан
    Комментировать
  • Как сделать на Python генерацию бейджика из ексель таблицы?

    @U235U235
    Для этого Python не нужен. Просто верстаете визитку-бейджик в программе верстке Scribus, устанавливайте дополнение https://berteh.github.io/ScribusGenerator/
    Затем делаете слияние при печати с нужным Excel файлом с данными.
    Все.
    https://www.youtube.com/watch/kMsRn38TOiQ
    Ответ написан
    4 комментария
  • Как наоборот ПОВЫСИТЬ приоритет ip6 над ip4?

    @mumische
    Возможно, что ответ на вопрос "Почему так?" где-то здесь:
    https://en.m.wikipedia.org/wiki/Happy_Eyeballs
    В вашем случае ipv4 может быть быстрее ipv6 и в результате браузер использует его.
    Ответ написан
    4 комментария
  • Почему пк выдаёт странный звук в наушниках?

    ValdikSS
    @ValdikSS
    Такой эффект возникает, когда не подключён провод земли на наушниках. Но если вы говорите, что пробовали разные наушники и разные выходы звуковой карты, а всё приходит в норму, если подключить USB-разъём, то, вероятно, нарушено соединение земли у самой звуковой карты, либо же вообще что-то не так с проводкой внутри материнской платы или БП.
    Ответ написан
    Комментировать
  • Вопрос про изучение C# – оптимальная методика?

    Casper-SC
    @Casper-SC
    Программист (.NET)
    Нормально. Я так и учил C#. Практика важна в этом деле, без неё долго будешь учить. Только я писал WPF приложение. И вообще практика написания больших приложений учит строить архитектуру. Будешь писать код и видеть проблемы в своём проекте. Рефакторить проект. Переписывать его части.
    Ответ написан
    2 комментария
  • Почему проверка прокси стабильнее через потоки чем через асинхронщину?

    greyhard
    @greyhard
    Программист, автолюбитель
    Потому что в асинхронщине вы не можете быть уверены через какой прокси идет очередной запрос. Да он поддерживает прокси но для всех Запросов. В итоге вы посылаете на проверку 10 проксей а по факту проверяется только один, потому и такой большой процент отказов. Для проверки проксей каждый запрос должен быть изолирован.
    Ответ написан
    2 комментария
  • Если хочу изучить C#, в каком направлении двигаться?

    Griboks
    @Griboks
    Двигайтесь в сторону официальной документации.
    Ответ написан
    Комментировать
  • Google api где взять token.json и credentials.json?

    @apu3
    Ноябрь 2021

    Как я это делал при помощи Golang и quickstart от Google (ссылка на этот quickstart - https://developers.google.com/sheets/api/quickstart/go).

    Это не относится в случае других языков, но, вероятно, всё работает так, что вам нужен client_secret.json (вроде как, это то же самое, что credentials.json, но не уверен на все 100%), а token.json по идее так или иначе генерируется из client_secret.json.
    client_secret.json можно получить при помощи https://console.cloud.google.com/apis/credentials . (нажать кнопку "CREATE CREDENTIALS" -> "OAuth client ID" -> "выбрать тип приложения и название токена" -> "Нажать на кнопку Скачать")

    Пишу этот ответ, чтобы у людей была хоть какая-то дополнительная возможность понять, что и как можно сделать, а не "делайте так же, даже если вы программируете на C++/C#/Python/и так далее"

    1. Зайти на https://console.cloud.google.com/apis/credentials
    2. Нажать "CREATE CREDENTIALS"
    3. Выбрать "OAuth client ID"
    4. Выбрать необходимую опцию в "Application type" и так далее. Не знаю, какое именно значение это имеет.
    5. Скачать файл client_secret.json (тот же credentials.json, насколько я понимаю)
    6. Добавить client_secret.json в go QuickStart
    7. Запустить QuickStart. Запущенная программа в консоли попросит перейти по ссылке (ссылку программа даст там же, в консоли) и вставить в консоль код (код увидите, когда перейдёте по ссылке)
    8. Программа сгенерирует token.json
    Ответ написан
    Комментировать
  • Как найти и удалить слово из строки?

    @kaka888
    C, C++, Qt, Python, Flask, aiogram, MySQL, Redis..
    Решение Aloya228 здесь не подойдёт, так как его код удалит из текста все приставки не- и аналогичные фрагменты слов.
    Придётся применить регулярные выражения:
    import re
    
    # Из text будут удалены слова "не"
    result = re.sub(r'\b[нН][еЕ]\b\s', '', text)
    print(result)


    А вообще, если строго следовать представленному тобой формату ввода, то можно и так:
    # Из text будет удалена подстрока "не ", если она находится в самом начале строки
    result = re.sub('^[нН][еЕ] ', '', text)


    Документация по регуляркам: ъуъ
    Ответ написан
    9 комментариев
  • Изменить кодировку файла TXT?

    Adamos
    @Adamos
    Если задача только в том, чтобы браузер отображал верно файлы txt, наляпанные вами в неизвестной виндовской кодировке, то ее решение - не в РНР, а в настройке того сервера, на котором крутится этот сайт.
    Чтобы он для *.txt подставлял заголовок
    Content-Type: text/plain; charset={та кодировка, которая реально в этих файлах}
    Ответ написан
  • Какое максимальное количество строк кода должно быть в классе?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Нет привязывайтесь к строкам.

    Если вы можете взять класс и быстро в нем разобраться для внесения изменений - значит нормальный размер.

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

    P.S. Понятно, что оценка времени и сложности класса у начинающего разработчика отличается от опытного, а ориентироваться нужно на оценку опытного разработчика.
    Ответ написан
    Комментировать
  • Что делать если файл откатился во времени?

    sergey-kuznetsov
    @sergey-kuznetsov
    Автоматизатор
    Пользователи делятся на два типа. Те кто делает резервные копии и те, кто ПОКА этого не делает ))
    Обычно первый инцидент с потерей данных заставляет почесать репу и подумать как настроить резервирование.

    Есть ещё третий тип людей, которые делают две резервные копии в разных местах и периодически проверяют их целостность. Это называется правило 3-2-1-0.

    В вашем случае наверное придётся смириться с потерей и предпринять меры, чтобы этого не повторилось в будущем.
    Ответ написан
    Комментировать
  • Стоит ли передавать в другой поток loop?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Лучше всего вообще избегать совместного использования потоков и асинхронщины. Есть есть веские основания их совмещать, то лучше стремиться к тому, чтобы у каждого потока был свой цикл событий, так как он не является потокобезопасным.
    Ответ написан
    Комментировать
  • Как получить путь к браузеру Google Chrome в python?

    Ответ написан
    Комментировать
  • PyCharm не видит мои классы?

    @marazmiki
    Укротитель питонов
    PyCharm по умолчанию начинает искать модули от корня проекта. Просто укажите ему дополнительные места для поиска. В Вашем случае, я так понимаю, это директория app

    В дереве проекта выделите эту директорию и выберите в контекстом меню: Mark directory as -> Source root
    Ответ написан
    2 комментария
  • Как вывести все таблицы из бд sqlite3?

    YuriyVorobyov1333
    @YuriyVorobyov1333
    Software Developer
    con = sqlite3.connect("data.db")
    cursor = con.cursor()
    
    cursor.execute("SELECT name FROM sqlite_master WHERE type='table';")
    print(cursor.fetchall())
    Ответ написан
    Комментировать
  • Как сделать видео редактор на python?

    HemulGM
    @HemulGM Куратор тега Python
    Delphi Developer, сис. админ
    Взять нормальный компилируемый язык. Изучить. А питон использовать как следует - в виде плагинов для видеоредактора.
    Ответ написан
    Комментировать
  • Что я делаю не так?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    Если отправляете JSON - передавайте ваши данные в параметр json. Хедер с типом контента удалить

    r = requests.post('https://p2p.binance.com/bapi/c2c/v2/friendly/c2c/adv/search', headers=headers, json=data)
    Ответ написан
    7 комментариев
  • Почему не работает import telebot?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    Во-первых, полный трейсбек, если он есть
    Во-вторых, не нужно называть файл одинаково с названием модуля
    Ответ написан
    1 комментарий
  • Что я делаю не так?

    MinTnt
    @MinTnt
    Просто в данном запросе "https://bablobit.ru/index.php?login/login" присутствует redirect. А как мы знаем, когда в пост запросе присуствует redirect, он будет возращать html.
    with open('1.html', 'w', encoding='utf-8') as f:
        f.write(r.text)

    Т.е. предпологаю что у тебя здесь вывелось html с окном для входа.

    Для того чтоб прочитать redirect, считываем r.history. А так как обычно на подобных форумах переадресация лишь одна, то можем считываем лишь первый, а так же можно вывести headers. Обычно на подобных, но чуть усложнённых версиях, как раз в headers генерируется session , который по дефолту обычно существует 30 дней. Благодаря этому session token потом при помощи get запросов, можем получать xftoken - который обычно по дефолту существует ~12 часов, или чуть больше.

    Так что для обработки пост запроса, можем использовать такой вот вид. Как раз таки в headers попадаются или токен сессии, или статус входа, не помню точно, относительно давно это было.
    print(r.history[0].headers, r.history[0].text)


    Update: Вот к примеру, в случае успешной авторизации, у r.status_code - будет равно 303. А в r.history[0].headers выведет что-то по типу
    Set-Cookie: xf_user=85376%2CH4tard146PUjjcLAYflx8-eovp8AmraDqd0lkf-A; expires=Thu, 28-Apr-2022 08:01:40 GMT; Max-Age=31536000; path=/; secure; HttpOnly
    Set-Cookie: xf_session=73Ox5QmBBLZEpYBL940YTm_iMX7u2ufR; path=/; secure; HttpOnly

    Эти set-cookie, берём, и добавляем к изначальным headers--> cookie. И вуаля.
    Ответ написан
    5 комментариев