Задать вопрос
  • Как правильно собрать сеть в квартире?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Пока есть возможность - заложите в каждую комнату по минимум 2 кабеля максимальной категории, причем с соблюдением всех правил прокладки. Оконцуйте розетками над плинтусом. Никогда не знаешь, где они впоследствии понадобятся, пусть лежат.
    Пару кабелей приведите к точке входа кабеля провайдера в квартиру. Там оконцуйте розетками и в одну из них вставьте кабель провайдера или патчкорд от оборудования провайдера.

    Вероятно вам захочется организовать домашний NAS или даже сервачок свой. Прикиньте, где его разместить (лучше не в шкафу по ряду причин). Например, на застекленной лоджии. Туда тоже проложите минимум два кабеля. И питание.

    Все кабели с комнат сведите в одну точку, там повесьте небольшой шкаф на 5-6 юнитов. Заведите все кабели в него, там разместите патч-панель, ИБП, полку для роутера, возможно свитч на нужное количество портов, дин-рейку с розетками и автоматом.

    67b1aed4c2bf8627140620.jpeg

    Важный момент - дверцу берите глухую, иначе мигание светодиодов ночью достанет.

    Приобретите 2-3 точки доступа Wi-Fi mesh. В идеале найти поддерживающие стандарт FreeMesh.
    Все точки доступа Wi-Fi собрать в mesh на 5ггц, одну из точек как главную настроить в режиме моста (bridge) и включить в общую сеть.

    Маршрутизатор я бы рекомендовал отдельный, без Wi-Fi, по ряду причин. К примеру, что-то из серии Ubiquiti Edge Router. Или тот же Keenetic помощнее, отключив в нем Wi-Fi и спрятав в шкаф на полочку.
    spoiler
    Маршрутизатор создает вашу внутреннюю сеть, будет раздавать DHCP, DNS, возможно, точное время, и служить firewall-ом. Эта функция обычно прячется в популярных Wi-Fi роутерах (потому они роутеры). Лучше отделить мух от котлет.
    Ответ написан
    2 комментария
  • InvalidHeader и SSLError - как исправить?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Кстати насчетРугается на сертификат - sertifi вы импортировали, а использовать-то его?
    Ключ в requests.get(url, verify=certifi.where())
    Ответ написан
  • Фронтенд - дизайн или программирование?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Фронтэнд формально это умение воплотить в коде, рисующем картинку на экране, визуальную и, возможно, динамическую задумку дизайнера. То-есть надо уметь перерисовывать, само по себе это не слишком творческое дело.

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

    Так что без творчества, без креатива и поиска красивых решений - это будет не программирование, а быдлокодерство какое-то.
    Ответ написан
    Комментировать
  • Как удалить лишний текст в Python скрипте?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    data = '"mail@xxx.com" <mail@xxx.com>'
    print(data.split('<')[1].split('>')[0])
    Ответ написан
    Комментировать
  • Как отформатировать вывод cmd?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Вариантов много. Например, весь вывод разбить на строки и выводить в цикле только те, которые содержат нужную подстроку. Или воспользоваться библиотекой re, там есть несколько вариантов.
    Но если вам это сложно - обращайтесь на фриланс.
    Ответ написан
    Комментировать
  • Какой взять хаб для MacBook 16?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Во-первых, лучше отвязать бэкап от компа. В идеале это сетевое устройство, NAS.
    spoiler
    К примеру, у меня крутится NAS на xpenology на железе HP microserver gen8 (да, древнее мамонтов, но крутится).И бэкап каждый час туда стучится и там хранится, подобие тайм-капсулы, но чуть заморочнее. Но там зеркало, и там места много, бэкапятся сразу два бука.
    Если есть возможность - купить оригинальный новый synology на 2-4 диска, он положит тайм-капсулу на обе лопатки.


    Во-вторых, зарядка. Не знаю, как на новых макбуках, но на моем стареньком я устал покупать Маковские и псевдомаковские зарядки и купил за 400 руб. (!) обычный БП для обычного ноута и переходник еще за 350 на магсейв. И это работает для условно стационарного макбука (который редко снимаешь со стола) идеально. Я обрел покой в смысле питания ноутов.

    На ваших новых type-c не должно быть принципиальной разницы. Просто мощный относительно недорогой ноутбучный блок + переходник - хотя бы и к хабу.
    spoiler
    А родной блок питания аккуратно вымыть от жира, спрятать в пакетик и брать только в дорогу.

    А все эти колхозы из груды проводов, собранных в хаб, вечно что-то чему-нибудь мешает, где-то что-то отойдет… дернешь неосторожно - всё пропало… не советую.
    Ответ написан
    7 комментариев
  • Можно ли использовать 45вват вместо 65вват бп ноутбука?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Будет 2 проблемы:
    1. Износ БП - он всё время будет работать «под пробочку» и вскоре понадобятся 2 новых блока питания.
    2. Вероятно, частенько будет ситуация, когда ноут работает и заряжается, и не будет хватать мощности БП на оба процесса одновременно. Будет работать по полной и разряжаться даже на блоке питания, либо будет таки заряжаться, но тормозить или вовсе выключенный.
    Ответ написан
  • Как загрузить фотографию в группу Одноклассников на Python?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Пока что из ошибки можно вывести, что формирование параметров производится неверно. Должен быть ключ “token”, но его видимо нет в сформированных параметрах. Копайте туда.
    Ответ написан
    6 комментариев
  • Какие уроки есть по Photoshop для обзора его возможностей (не приёмов)?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Недавно дочка прошла курс для школьников по растровой графике от «ЦТПО РГУ им.А.Н. Косыгина». Не знаю, есть ли аналогичный курс для не школьников, но поищите или спросите у них. Дочка довольна. Что касается именно Фотошоп, основные его механики там разбирали.
    Ответ написан
    4 комментария
  • Как свободно ходить по дереву json в обоих направлениях?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Не ленитесь гуглить. Вот с налету нашел вам пример реализации нужного вам json
    spoiler
    [
      {
        "id": 1,
        "parentId": null,
        "name": "Root",
        "children": [
          {
            "id": 2,
            "parentId": 1,
            "name": "Section A",
            "children": [
              {
                "id": 4,
                "parentId": 2,
                "name": "Page 1",
                "children": []
              },
              {
                "id": 5,
                "parentId": 2,
                "name": "Page 2",
                "children": []
              }
            ]
          },
          {
            "id": 3,
            "parentId": 1,
            "name": "Section B",
            "children": [
              {
                "id": 6,
                "parentId": 3,
                "name": "Page 3",
                "children": []
              }
            ]
          }
        ]
      }
    ]

    Корректируйте под свою задачу. Пишите соответствующий класс на Python для ноды этого json с нужными вам методами «получить_родителя», «получить_наследника», «проверить_корень_ли_я», ну и для создания-удаления наследников парочку методов.
    Ответ написан
    6 комментариев
  • Ошибка при нажатии кнопки "Next", (Instagram, Selenium) Как исправить?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Разделите эту огромную простыню на небольшие функции, которые будут каждая делать только одно. Признак, по которому можно делить - «и». Если функция делает то и это, выделяем функции «делать то» и «делать это».
    Основная функция вызывает остальные в нужном порядке.
    Так отладить всё это будет значительно проще.

    Кстати, модный deekpeek прекрасно умеет порезать такую портянку кода на ленточки, пробуйте.
    Ответ написан
  • Почему self интерпретируется как None в ходе инициализации __init__?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    def __init__(self, depth: int):
        self.split_pair: Optional[SplitPair] = None
    …
    def __str__(self):
        return str(self.split_pair)

    Полагаю, причина тут. self получает «строковое представление» “None”
    Ответ написан
    Комментировать
  • Как в столбце найти частичное совпадение фразы?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Если вам надо решить чисто практическую задачу - скачайте и установите расширение PLEX с сайта планета эксель. Там есть в том числе библиотека формул и макросов, в которой есть в том числе нечеткое сравнение, и даже не одно. Но из практики оно работает так себе… но это хоть что-то.

    Если же вам надо теоретическое решение - ищите на Хабре статью «Как работает неточное сравнение строк».
    Ответ написан
    Комментировать
  • Первая часть бота работает, выводит список ролей. После выбора роли ничего не происходит. В чем может быть проблема?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Полагаю, проблема может быть в том, что это не код, а бред нейросети. Бред нейросети можно использовать в качестве шаблончика, который надо прочесть, осмыслить и поправить. Если вы не осмыслили, вам надо сначала что-то попроще сделать.
    Ответ написан
  • Ростелеком интернет через свое оборудование, возможно?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    У Ростелеком интернет заведен с вероятностью 99.9% по GPON (я знаю только одну экспериментальную сеть доступа Ростелеком не GPON, а точка-точка, и маловероятно, что вы к ней относитесь).
    Так что необходимо не просто оптический порт, а GPON порт; а это - нужна специальная SFP; более того, нужно еще правильные настройки залить. А их вам никто никогда не сообщит.
    Таким образом, практически невозможно использовать своё оборудование с оптическими сетями Ростелеком.
    Ответ написан
  • Ноут поплыл артефактами после установки программы.?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    После не значит вследствие.
    spoiler
    Известен случай, когда товарищ сидел в туалете, слил воду и случилось землетрясение, полгорода развалилось, товарищ чудом выжил в своем сортире. Его откопали, но сошел с ума, потому что решил, что землетрясение - его рук дело. Не надо так.

    После установки программы ноутбук сломался. Не значит, что вследствие. Он просто сломался - сдохла память или переклинило вентилятор и от перегрева поплыл процессор или графический сопроцессор, или графическая память, если она выделенная. Или шлейф где-то перетерся, или конденсаторы сдохли, или кошак нассал на ноут, он отсырел и завелась плесень, или окислился внутри, или блок питания пробился и переменка в ноут попала… да мало ли.
    Но возможно это программная проблема - вирус или сбой.

    Можно ли продолжить работу? Вероятно, на этом ноутбуке - нет.
    Проверить можно, попытавшись загрузиться с загрузочной флешки с каким-либо live дистрибутивом чего-то типа Linux. Если Linux запустится без проблем - вероятно, ноут исправен (но не гарантированно).

    Ни в коем случае не пытайтесь просто переустановить систему или напустить на нее «исправлятор».

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

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

    После спасения документов - ноут в ремонт или в утиль, продолжать доделывать свой проект на другом компьютере.
    Ответ написан
    Комментировать
  • Корректный алгоритм изучения языка программирования?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    А возьмите язык Go. Он сделан так, что в нем вы сразу получаете готовый монолитный бинарный исполняемый файл. Тот самый exe. Бери и запускай. Думать о сборке, компиляции и прочих заморочках не надо. Фигак-фигак и готово.
    Ответ написан
  • Как отправить запрос в LM Studio?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Прямо в опубликованной вами ссылке есть несколько примеров (example) под каждый метод API. Используется curl. Возьмите их и переделайте под свои задачи.
    Ответ написан
    Комментировать
  • Как научиться декомпозиции в ООП?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Я когда-то так же застрял. Не понимал, как же выделять эти самые классы? И зачем?
    Долго тупил в эти «авто» и наследники «грузовик» и «легковушка», с колесиками и баками.
    Или users с managers и clients.
    Всё это было понятно, пока не пытался сам что-то осмыслить из реальной жизни.

    Мне помогли две вещи:
    1. Фраза учителя типа «класс - это заголовок таблицы; строки - экземпляры класса; имена колонок - имена атрибутов класса». Это ОЧЕНЬ ГРУБО. И многие поспорят и будут правы. И для понимания идеи учителя надо понимать базы данных или хотя бы excel и access (я как раз тогда только что это дело изучил). Но это меня сдвинуло с мертвой точки.
    2. Я долго строил всякие «парсеры» из лапши и перегруженных дурно пахнущих функций. Мне попалась на Хабре переводная статья (точнее, не официальная документация) про selenium и раскладку его в стиле ООП. Это не прям образец для подражания (там есть пара деталей, которые мне очень не понравились), но когда я свой код рефакторил в соответствии с рекомендациями этой статьи (это было долго, больно, но в итоге получилось гораздо красивее исходной чудовищной лапши), я многое понял.
    Ответ написан
    1 комментарий
  • Какие инструменты Вы используете для парсинга?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Если надо быстро и с минимумом писанины - лепите на RPA. Я в своё время на Sherpa лепил хоть и костыльные, но вполне рабочие «парсеры».
    Ответ написан