Задать вопрос
  • Где надо хранить sitemap.xml и robots.txt?

    Mike_Ro
    @Mike_Ro Куратор тега Поисковая оптимизация
    Python, JS, WordPress, SEO, Bots, Adversting
    1. Хранить в корне.
    2. The ultimate guide to robots.txt, XML-формат файла Sitemap.
    И как должен выглядеть robots.txt файл и sitemap.xml

    Гугл.
    И есть какое-либо ограничение на размер этих файлов

    Есть для sitemap - гугл.
    Ответ написан
  • Хватит ли MacBook Air 13 с чипом M3 с конфигурацией 16/512 для разработки?

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

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    Вопрос, каким наиболее простым способом перенести сам контент?

    Migrate content wordpress
    Ответ написан
    Комментировать
  • Что лучше выбрать для интерфейса программы?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    Первый, что лучше на сегодняшний день, веб или desktop.

    Если в рамках соц.сети - смотрите на успешных конкурентов, а у них:
    1. Веб: SPA/SSR (React/Vue).
    2. Мобильное приложение (Kotlin/Swift или Flutter).
    И второй вопрос, про то, что выбрать для пользовательского интерфейса: flet, HTML/CSS/JS, QT.

    - Или React/Vue + SCSS + (Django + DRF или FastAPI).
    - Или (если нет знаний современного фронта) то vanilla JS + SCSS + все это рендерить на бэке (Django или FastAPI) и отдавать посетителю готовые страницы.
    Собираюсь разработать пет-проект

    Пет-проект с целью чего? Если найти работу, то QT/Flet/Desktop + Python = экзотика в мире заказчика (в вакансиях или на фрилансе) вообще, и экзотика*100 в мире заказчика в соц.сетях и подобных проектах.
    будет намного производительней

    Python не про производительность.
    Ответ написан
    Комментировать
  • Как запретить (ограничить) ботов грузить сайт?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Заметил, что за последние 2 месяца резко выросла нагрузка на сайт

    Если источники трафика на сайт не изменялись - 100% боты.
    основные посетители это Android 13, которые находятся на сайте от 0 до 20 секунд

    Новичков видно издалека.
    Я так понимаю - это могут спокойно делать конкуренты, чтобы понизить сайт в поисковой выдаче?

    Не обязательно, но вполне вероятно.
    Как это можно ограничить?

    Вариантов много (а также разные cdn и капчи, вроде cloudflare, akamai, recaptcha и smartcaptcha), но все это действует лишь на простых и частично, на средних ботов.
    Ответ написан
    2 комментария
  • Откуда на маркетплейсах новые ноутбуки с процами 5-6 летней давности?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Больше похоже на БУ по видом новых / почти новых, так часто с серверами делают. Ну и нераспроданные остатки со складов никто не отменял (маловероятно, но возможно).
    Ответ написан
    Комментировать
  • Как настроить minimize webpack?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    По идее, первый optimization будет перезаписан вторым optimization=false. Либо удалите второй блок, либо замените его на такой:
    const CssMinimizerPlugin = require("css-minimizer-webpack-plugin");
    const TerserPlugin = require("terser-webpack-plugin");
    
    optimization: {
        minimize: true,
        minimizer: [
            new TerserPlugin({
                terserOptions: {
                    mangle: true,
                    keep_classnames: true,
                    keep_fnames: false,
                },
            }),
            new CssMinimizerPlugin(),
        ],
        splitChunks: {
           chunks: 'all',
        },
    },

    Я ожидаю что в бандле будут переименованы хотя бы локальные переменные, чтобы как-то защитить код.

    Минимизация !== обфускация, код может быть изменен, но не с целью "защиты".
    Ответ написан
  • Как выбрать нужный ответ из JSON файла?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    Как вариант (добавить проверок и исключений):
    ERRORS_FILE = 'error.json'
    IMAGES = 'error_images'
    
    error_data = {}
    
    with open(ERRORS_FILE, 'r', encoding='utf-8') as f:
        error_data = json.load(f)
    
    # Код бота:
    
    error_code = call.data
    error_description = error_data.get(error_code)
    
    # bot.send_message(call.message.chat.id, "Ошибка 501")
    bot.send_message(call.message.chat.id, f"Ошибка {error_code}: {error_description}")
    
    # photo = open('501.jpg', 'rb')
    image_path = os.path.join(IMAGES, f"{error_code}.jpg")
    with open(image_path, 'rb') as photo:
        bot.send_photo(call.message.chat.id, photo, caption=error_code)

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

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Либо боты, либо "случайный" клик (реклама например), либо поздно инициализируется счётчик.
    Ответ написан
    Комментировать
  • Что выбрать для хостинга сайта: 2 ядра до 5 ГГц или 6 ядер до 3.2 ГГц?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Что выбрать для хостинга сайта: 2 ядра до 5 ГГц или 6 ядер до 3.2 ГГц?

    В зависимости от основного типа нагрузки:
    - IO bound - больше ядер.
    - CPU bound - больше частота.
    сайт работает на CMS DLE.

    Если это основная нагрузка, то больше ядер. А вот сколько конкретно ядер - можно вычислить в админке хостера (самый простой способ), если нагрузка на машину доходит до 100%, то пора докинуть ядер или оперативки.
    Текущая посещаемость — около 3000 уникальных пользователей в день.

    Правильнее считать не общую нагрузку, а максимальное количество запросов к серверу в секунду (max rps).
    Ответ написан
    Комментировать
  • Можно ли менять значения импортируемого файла после билда проекта?

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

    Нельзя, нужно пересобрать проект.
    Ответ написан
    Комментировать
  • Как сделать, чтобы при парсинге bs4 как то надо нажать на кнопку "показать еще", чтобы подгрузило еще 20 постов?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    Как сделать, чтобы при парсинге bs4 как то надо нажать на кнопку

    Никак, bs4 как и requests лишь получают то, что отдал сервер при первом ответе. Вы можете попробовать исследовать то, какой запрос на сервер отправляется, при нажатие этой кнопки, а затем отправлять запросы из bs4 напрямую к этому серверу. А вообще, для таких задач (нажатие кнопок на сайте итп), используйте Selenium или CDP.
    так как я учусь пасингу в bs4

    А чего там учить?
    Ответ написан
    Комментировать
  • Как с помощью Selenium на Python найти элемент html страницы, который расположен в #shadow-root (open)?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    How to automate shadow DOM elements using selenium?

    Если коротко, то порядок следующий:
    1. Сначала нужно найти в основном dom тот элемент, к которому прикреплен shadow root.
    2. У п1. нужно получить свойство .shadow_root.
    3. И вот уже у п2. нужно вызывать его собственный метод find_element, чтобы найти нужный элемент внутри него.

    Или так:
    Локатор не находит элемент на сайте, хотя набран верно, пробовал разные варианты, не помогает, в чём проблема?
    Ответ написан
    3 комментария
  • Как в wordpress назначить горячую клавишу на кнопку "сохранить" в редакторе записей?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    т.е. чтобы например ctrl+s нажал - и запись полностью сохранилась и опубликовалась

    Оно так и работает (раскладка должна быть на английском), но запись должна быть изменена, в ином случае ничего не произойдет, рекомендую почитать:
    - Use keyboard shortcuts (Block Editor).
    - Use keyboard shortcuts (Classic Editor).

    Что бы горячие клавиши стали доступны при работе с комментариями, необходимо перейти в Пользователи -> Профиль -> Включить "Горячие клавиши".
    Ответ написан
    4 комментария
  • Как добавить Тег к сделке AMO CRM по API?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    - Не POST, а PATCH.
    - Эндпоинт можно без id сделки: /api/v4/leads.
    - Теги передаются как массив объектов внутри _embedded['tags'].
    - Данные необходимо преобразовать в json.

    Выглядеть это будет примерно так (я не силен в php):
    $data = [
        [
            'id' => (int)$leadId,
            '_embedded' => [
                'tags' => [
                    ['name' => 'tag_name'],
                ],
            ],
        ],
    ];
    
    $res = $amoClient('PATCH', '/api/v4/leads', ['json' => $data]); 
    echo $res['status'];
    Ответ написан
    Комментировать
  • Используют ли сейчас повсеместно class?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    Хотел узнать, для браузерного фронта( для SPA приложения на Vue3), принято ли будет создавать обьекты через классы?
    class MyClass {

    Насколько я знаю, во vue используется объектно ориентированный подход с использованием компонентов, без классов. Например в react используется композиция наследования, тоже без классов.
    Насколько в этих классах фичи поддерживаемые в браузерах, или полифиллами.

    Большинство фронта сегодня собирается различными сборщиками, по типу webpack и vite. Они самостоятельно преобразуют "современный" js в тот js, который необходим для браузеров определенной (минимальной) версии.
    p.s. без typescript

    К TS это так же относится.
    Ответ написан
    Комментировать
  • Можно ли делать редирект страницы одного сайта на другой?

    Mike_Ro
    @Mike_Ro Куратор тега Поисковая оптимизация
    Python, JS, WordPress, SEO, Bots, Adversting
    хочу сделать редиректы с посещаемых страниц на другой сайт, на котором я создам такие же статьи. Вопрос в том будут ли проблемы с поисковиками?

    Сделайте 301 редирект и проблем не будет.
    Ответ написан
    3 комментария
  • Вебмастер: Страницы-дубли с GET-параметрами?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Для Яндекса используйте Clean-param:
    Clean-param: entityId /downloads/
    Ответ написан
    Комментировать
  • Имеет ли смысл использова vue с scss?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Есть
    Ответ написан
    Комментировать
  • Как работать с api сервиса на localhost?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    А я не хочу постоянно закидывать код на сервер что бы протестировать работает он или нет.

    Сурово!
    Как совместить локальную разработку и прием данных с внешнего сервиса?

    Как вариант, можно использовать обратный прокси по типу ngrok:
    1. Регаемся в ngrok и качаем их приложение.
    2. Указываем в ngrok, какой порт на локалке слушать, пусть будет :8080 ngrok http http://localhost:8080.
    3. Из консоли п2. копируем url обратного прокси, он будет похож на что то вроде https://9abc0-11-22-333-44.ngrok-free.app.
    4. Поднимаем свое приложение-сервер локально на порту из п2.
    5. В api сервиса указываем адрес из п3, например: https://9abc0-11-22-333-44.ngrok-free.app, с роутами из вашего приложения - это будет выглядеть примерно так:
    https://9abc0-11-22-333-44.ngrok-free.app/api/route-name
    .

    В результате, внешний api сервис сможет отправить данные в ваше приложение, которое запущенно у вас локально.

    P.S. запятые уже включены в тариф, используйте их иногда :)
    Ответ написан
    Комментировать