Задать вопрос
  • Plotly и Dash работает в России?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Несколько дней подряд не открывается документация plotly и das

    Открывается, МТС мобильный.
    ВПН не помогает

    Помогает, с ним так же открывается.
    Ответ написан
    Комментировать
  • Вся сложность парсинга Авито. Как это сделать правильно?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    ну и плавненько дошел до Playwright

    Правильно, на нем и оставайтесь.
    использование мобильных прокси с ручной ротацией

    Мобильные и резиденские прокси - это на данный момент вариант с наибольшим доверием, со стороны анти-бот систем.
    А с прокси (Значительно меньше, до 5 мбит/с) сайт еле фурычит, не прогружается и зависает со страшнейшей силой.

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

    Только методом тыка вы сможете найти нормальный прокси, либо свою ферму делать.
    Дайте пожалуйста ваших советов! Как вы обходили блокировки и всю тяжесть парсинга столь укрепленного сайта?

    Во первых, это коммерческий секрет. Во вторых, у крупных сервисов либо сторонняя компания осуществляет анти-бот защиту, либо имеется свой отдел защиты, люди там давно воюют с ботами и имеют приличный опыт. В третьих, преодоление защиты это отдельное направление в программирование, которое занимает годы на обучение. Рекомендую почитать Как анти-бот системы определяют ботов и как от них защищаться? . В четвёртых, профессионалы используют кастомный playwright (или cdp аналог), кастомный браузер, кастомную прокси ферму, кастомные паттерны поведения человека.
    Ответ написан
    Комментировать
  • Подойдет ли desktop-ubuntu для разворачивания web- сервера?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Подойдет, количество ubuntu, на которых можно за раз разворачивать ПО - не ограничено законом и верой. Другой вопрос - зачем.., но судя по вопросу - ответ на него не требуется.
    Ответ написан
    Комментировать
  • Почему падает npm install?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Подозреваю, что другие библиотеки качаются нормально..? Бывают подобные ошибки, просто обзаведитесь нормальным vpn.

    И да, ошибку нужно писать текстом, а не изображение размещать.
    Ответ написан
  • Какие подходящие характеристики для VPN?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    какое количество одновременных пользователей может выдержать сервер с 1 процессор, 2 ГБ ОЗУ, 20 ГБ SSD?

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

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Спарсить что либо из этого сервиса нельзя

    Почему?
    когда файлы стали становиться размером более 500 тыс.строк, то есть более 500 мб, браузер стал умирать

    Невероятно, чего это он...
    будет ли сильная нагрузка на браузер?

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

    Причем здесь python, nodejs и браузер? Не говоря уже о том, что python медленнее js.
    айтишников у нас нет, спасение утопающих-дело рук самих утопающих. Вояем с коллегой сами. Денег на разработку у фирмы нет

    Классика.

    Пишите на том, что знаете. Обрабатывайте данные на nodejs, затем выводите результат в браузер.
    Ответ написан
    Комментировать
  • Где и как получить грамотную консультацию по Яндекс.Директ?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Где и у кого можно получить толковую платную консультацию

    Если специалист действительно умеет в директ/seo/парсинг, значит это ему приносит непосредственную прибыль, тогда какой смысл раскрывать секрет работающего бизнеса? Отдайте весь проект на поддержку, заложите расходы на директ в себестоимость продукта и работайте спокойно.
    сколько это может стоить?

    Сколько назовет, столько и будет стоить.
    Ответ написан
    2 комментария
  • Законно ли получение данных через API школьного портала, если я обычная студентка?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Это вообще законно?

    Если парсинг не приведет к падению сервера, то условно (нужно изучить правила использования этого сайта), законно, в ином случае, это вроде 272 статья УК РФ.
    но там я не поняла, можно ли использовать его, если я обычная студентка

    Тогда нельзя. В 13 заповеди по программированию сказано - "законно лишь для необычных студенток".
    Ответ написан
    5 комментариев
  • На каком языке лучше писать api (читайте описание)?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Вначале нужно определить, для чего именно "лучше". А вообще, выжимайте максимум из того, с чем работаете, а уже затем переписывайте узкие места.
    Ответ написан
    Комментировать
  • FastAPI Prometheus_fastapi_instrumentator где мне следует разместить?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    где мне следует разместить Prometheus_instrumentator — внутри или снаружи lifespan?

    Снаружи lifespan, чтобы он был доступен на протяжении всего жизненного цикла приложения. Но instrumentator.instrument нужно вызывать после создания экземпляра fastapi, но до запуска самого приложения.
    Ответ написан
    1 комментарий
  • Как скрывает исходящие ссылки этот сайт?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    есть ли плагин который делеет так автоматически со всеми внешними ссылками

    Не видел таких, а для ссылок с редиректом подойдет плагин редиректор, например 301 Redirects или Redirection, указываете какой url нужно "слушать" и куда с него направлять.
    Ответ написан
    Комментировать
  • Как анализировать рынок IT, чтобы помочь ребенку с выбором направления?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    На данный момент, я бы для ребенка выбрал следующую схему:
    1. Универ на программиста + параллельное изучение java (максимальный спрос).
    2. С третьего курса - бесконечные попытки устроиться на стажировку java разрабом в финтех.
    3. Затем (у него уже есть теплое место и достаточно денег), он самостоятельно выберет другое направление по душе, если понадобиться.
    Может есть какие то ресурсы где будет описана конкуренция и тенденция? Заранее спасибо за ответы.

    Основной сайт для поиска работы (как индикатор) подойдет? Я как раз делал подборку 2 недели назад по nodejs, php и python, вроде данные не сильно изменились.

    P.S. В резюме указаны лишь те, кто "активно ищет работу".

    Вакансии (backend):
    - NodeJS (Express/Nest): 57 вакансий.
    - PHP (Laravel/Symfony/Yii): 295 вакансий.
    - Python (Django/FastAPI/Flask): 365 вакансий.
    - .NET: 364 вакансий.
    - Java: 719 вакансий.

    Резюме (backend):
    - NodeJS (Express/Nest): 2111 резюме.
    - PHP (Laravel/Symfony/Yii): 4392 резюме.
    - Python (Django/FastAPI/Flask): 9957 резюме.
    - .NET: 3808 резюме.
    - Java: 9932 резюме.

    Соотношение вакансий к резюме (backend):
    - NodeJS (Express/Nest): 1/37.
    - PHP (Laravel/Symfony/Yii): 1/15.
    - Python (Django/FastAPI/Flask): 1/27.
    - .NET: 1/10.
    - Java: 1/13.

    ----------------------------------

    Вакансии (fullstack):
    - NodeJS (Express/Nest): 132 вакансий.
    - PHP (Laravel/Symfony/Yii): 410 вакансий.
    - Python (Django/FastAPI/Flask): 416 вакансий.
    - .NET: 451 вакансий.
    - Java: 787 вакансий.

    Резюме (fullstack):
    - NodeJS (Express/Nest): 2307 резюме.
    - PHP (Laravel/Symfony/Yii): 4257 резюме.
    - Python (Django/FastAPI/Flask): 4951 резюме.
    - .NET: 3100 резюме.
    - Java: 6852 резюме.

    Соотношение вакансий к резюме (fullstack):
    - NodeJS (Express/Nest): 1/17.
    - PHP (Laravel/Symfony/Yii): 1/10.
    - Python (Django/FastAPI/Flask): 1/12.
    - .NET: 1/11.
    - Java: 1/9.

    Итог:
    - NodeJS (Express/Nest) - очень мало вакансий и самая большая конкуренция за рабочее место (в этой подборке), в среднем, в 1.5-2 раза больше, чем в PHP/Python/.NET/Java.
    - Python (Django/FastAPI/Flask) - самое большое число вакансий. Конкуренция за рабочее место в сравнение с PHP в 1.5-2 раза больше. Стоит отметить колоссальную разницу в соотношении вакансий к резюме между backend и fullstack разработчиками - 27 и 12, очень похоже на тех самых "вкатунов", которые "долбят" лишь одно направление, "рисуют" 1-3 года опыта и вперед.
    - PHP, .NET и Java имеют примерно равную конкуренцию.
    Ответ написан
    4 комментария
  • Как wikidot.com определяет, что я в России?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Как wikidot.com определяет, что я в России?

    - IP.
    - Геозона браузера.
    - Язык браузера.
    - DNS/WebRTC утечки прокси.
    - По отпечатку браузера в целом, возможно, он ранее был засвечен на российском ресурсе, который однозначно (по их мнению) позволяет вас отнести к российскому сегменту. Как анти-бот системы определяют ботов и как от них защищаться?
    Ответ написан
    Комментировать
  • Частичный перенос сайта с Tilda на Wordpress: как перенести лишь целевую страницу, а остальные оставить на одном домене?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    оставить на Тильде ради SEO

    Обычно наблюдаю обратное, что то изменилось?
    На мой взгляд, это кошмарные костыли, но возможно есть идеи реализации, или конкретные подводные камни, которые вы можете описать, и заказчик передумает так делать :)

    Есть, можно перенести с тильды на wp весь сайт, ради seo, а так же, чтобы избежать описанный геморрой в вопросе.
    Ответ написан
    Комментировать
  • Какой вид рендеринга лучше использовать для SEO интернет магазина и блога на NextJS?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Если брать интернет магазин и блог на NextJS, то какой вид рендеринга будет правильней использовать для SEO?

    Классический ssr + кэширование.
    Ответ написан
    Комментировать
  • Какие pet проекты востребованы в резюме?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Какие pet проекты востребованы в резюме?

    Либо популярные опенсорсные библиотеки, либо коммерческие проекты, т.е. в вашем случае - никакие.
    Преимущественно занимался на литкоде и немного изучал алгоритмы, никаких библиотек не осваивал, буду нагонять. Хотя хотел бы получить совет на какие именно лучше обратить внимание.

    Следующие и примерно в следующем порядке:
    0. Pip -> uv для виртуального окружения.
    1. Async django + (drf|django-ninja) + postgresql.
    2. Celery.
    3. JS, для "недо-фронта".
    4. FastAPI.
    5. React/Vue для фронта.
    Вопрос в следующем: как сочетать технологии в своих проектах?

    1. Ставите задачу, например - написать интернет магазин.
    2. Гуглите, как сделать то и то, задаете здесь конкретные вопросы. Не лезете в преждевременную оптимизацию (это очень важно!).
    3. Повторить п1-2 99 раз, на разных проектах.
    4. Знаете, где, что и зачем применять.
    Ответ написан
    Комментировать
  • Как устранить ошибку 403 forbidden error wordpress wp-admin?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    Я так понимаю, что мой ip не в белом листе

    Возможно, но не факт. Может какой то ультра-плагин выбрасывает 403, почему? А почему бы и нет..?

    Варианты:
    1. Плагин безопасности wp или любой другой плагин блочит. Залезаем по ftp и меняем наименование директории /wp-content/plugins на /wp-content/_plugins.
    2. Хостинг блочит. Если это shared хостинг, пишите в поддержку - пусть разбираются.
    3. Неправильные разрешения на директории. Обычно (для wp), они должны быть такими: папки 755, файлы 644, wp-config.php 440 или 400.
    4. Вирус, который пролез на хостинг и закрыл в .htaccess доступ к админке.

    Гуглить wordpress 403 forbidden wp-admin
    Да с говна на говно, мы предлагали просто сверстать сайт, но ему принципиально использовать wp и elementor.

    Попробуйте не "просто сверстать", а предложить "современный, модный и производительный вариант на wp+gutenberg, на который все переходят с elementor", может прокатит.
    Ответ написан
  • Стоит ли бежать со стартапа?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Не надо ничего гадать и спрашивать, резюме на hh и вперёд по десяткам вакансий, только после этого вы поймёте свою стоимость на рынке. Затем, сообщаете своему работодателю о конкретных офферах от других потенциальных работодателей, и т.к. вы "болеете" за текущий проект и команду, то готовы остаться на прежнем месте за "аналогичную/-X%" зарплату.
    Ответ написан
    Комментировать
  • Что использовать для тестирование в TS?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Ответ написан
    Комментировать
  • Как создать тип данных, представляющий смещение?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    (лево ИЛИ право) ИЛИ (верх ИЛИ низ)

    // Левое ИЛИ правое значение.
    type OffsetHorizontal =
      | { left: number; right?: never; }
      | { right: number; left?: never; }
    
    // Верхнее ИЛИ нижнее значение.
    type OffsetVertical =
      | { top: number; bottom?: never; }
      | { bottom: number; top?: never; }
    
    // Горизонтальные значения, с запретом использования с вертикальными.
    type OffsetHorizontalOnly = OffsetHorizontal & {
      top?: never;
      bottom?: never;
    }
    
    // Вертикальные значения, с запретом использования с горизонтальными.
    type OffsetVerticalOnly = OffsetVertical & {
      left?: never;
      right?: never;
    }
    
    // OffsetHorizontalOnly ИЛИ OffsetVerticalOnly.
    type Offset = OffsetHorizontalOnly | OffsetVerticalOnly;
      
    // Верно:
    // { left: 100 }
    // { right: 100 }
    // { top: 100 }
    // { bottom: 100 }
    
    // Неверно:
    // { left: 100, right: 100 }
    // { top: 100, bottom: 100 }
    // { left: 100, top: 100 }
    // { right: 100, top: 100 }
    // { left: 100, bottom: 100 }
    // { right: 100, bottom: 100 }

    Если понадобиться вариант с И/ИЛИ между осями, то можно так реализовать:
    // Левое ИЛИ правое значение.
    type OffsetHorizontal =
      | { left: number; right?: never; }
      | { right: number; left?: never; }
    
    // Верхнее ИЛИ нижнее значение.
    type OffsetVertical =
      | { top: number; bottom?: never; }
      | { bottom: number; top?: never; }
      
    // OffsetHorizontal И/ИЛИ OffsetHorizontal.  
    type Offset =  
      | OffsetHorizontal  
      | OffsetVertical  
      | (OffsetHorizontal & OffsetVertical);
      
    // Верно:
    // { left: 100 }
    // { right: 100 }
    // { top: 100 }
    // { bottom: 100 }
    // { left: 100, top: 100 }
    // { right: 100, top: 100 }
    // { left: 100, bottom: 100 }
    // { right: 100, bottom: 100 }
    
    // Неверно:
    // { left: 100, right: 100 }
    // { top: 100, bottom: 100 }
    Ответ написан
    1 комментарий