Задать вопрос
  • Какие есть видеоплееры с возможностью добавления серий?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    - https://github.com/CookPete/react-player (библиотека поддерживает возможность создания плейлистов из массива).
    - https://videojs.com/guides/react/ (можно создать видеоплеер с возможностью добавления серий или плейлистов).
    - https://github.com/vidstack/vidstack ("серии" нужно реализовать руками, хотя частично, функционал имеется).
    Ответ написан
    2 комментария
  • Несуществующие URL ведут на главную страницу. Как это может повлиять на SEO?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Если в адресной строке к урлу главной страницы припысывать различные символы, цифры и т.д. (т.е. прописывать несуществующие на данном сайте урлы), то отображается главная страница

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

    Варианты, между плохим и очень плохим, зависит от настроения поисковика.
    Сайт сделан на JQuery

    Это некий вариант SPA? Можно ссылку? Я пишу это к тому, что возможно, основные проблемы в SEO начинаются здесь...
    Ответ написан
    Комментировать
  • Сайт с www ведёт на страницу хостинга, а без www работает нормально. Нужно ли делать редирект?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Нужно ли с этим что-то делать?

    Вижу тег "ПОИСКОВАЯ ОПТИМИЗАЦИЯ", попробую угадать, что Вы имеете ввиду. Скорее всего, вы хотели сказать "Нужно ли мне с этим что-то делать, чтобы поисковая оптимизация стала лучше"?
    Нужно! На данный момент у Вас 2 сайта, один с www, а другой без www. Делайте редирект с www на без www. Аналогичное сделайте с http > https.
    Ответ написан
    Комментировать
  • На чем быстрее запрограммировать сайт каталог?

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

    Зависит от ТЗ и разработчика. Если это простой сайт состоящий из простых статей - WP будет быстрее.
    И почему?

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

    Кстати, не факт, что этот фактор поспособствует ускорению ;)
    Сайт стандартный, без лишних дополнительных плюшек.

    А Вы откуда знаете, у Вас имеется необходимая компетенция так судить? Яндекс тоже простой, всего 1 желтая поисковая строка, работы на 10 минут...
    Ответ написан
  • Нужно ли снова устанавливать Node.js для каждого нового проекта?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Попробую объяснить простым языком.

    0. Каждый проект по умолчанию имеет свои локальный пакеты (библиотеки), которые самостоятельно устанавливаются в корневую директорию node_modules, они устанавливаются на основе файла проекта package.json (инициализация).

    Предположим, что Вы не используете контейнеризацию, то:
    1. Ноду необходимо ставить глобально, например 18 версии. Что такое глобально? В таком случае, все Ваши проекты NodeJS смогут использовать эту ноду, хотя нода при этом не будет находиться локально ни в одном из Ваших проектов.
    2. Если все Ваши проекты используют исключительно ноду 18 версии, то дополнительную ноду ставить не требуется.
    ---
    3. Если у Вас проекты используют разные версии ноды, то рекомендую с нодой работать не на прямую, а через nvm (установка/удаление/переключение).
    ---
    4. Если Вы используете контейнеризацию, то обычно, нода+проект ставится в каждый контейнер.
    Ответ написан
    Комментировать
  • Является ли замена iframe ютуб ролика на lite-youtube таким кодом оптимальной?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    Цикл можно оптимизировать:
    foreach($matches[1] as $index => $video_id) {
        $replacement = '<lite-youtube videoid="' . $video_id . '" params="controls=1"></lite-youtube>';
        $content = str_replace($matches[0][$index], $replacement, $content);
    }

    А существует ли вообще matches?
    if(!empty($matches[0]))
    Если src не идет первым во фрейме, то Ваша регулярка не сработает, можно сделать так:
    '/<iframe[^>]*src=\"https:\/\/www\.youtube\.com\/embed\/([^\?"]+)(\?[^\"]*)?\"[^>]*><\/iframe>/';
    Ответ написан
    Комментировать
  • Как получить список всех групп/каналов в которых находится пользователь Telegram?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    https://github.com/LonamiWebs/Telethon
    https://docs.telethon.dev/en/stable/concepts/entit...
    from telethon import TelegramClient, utils
    
    # config
    api_id = 'id'
    api_hash = 'hash'
    phone = 'phone'
    
    client = TelegramClient('session_name', api_id, api_hash)
    
    async def main():
        # authentication
        await client.start(phone)
        
        # get group and channel list
        dialogs = await client.get_dialogs()
    
        # print group and channel data
        for dialog in dialogs:
            if dialog.is_group or dialog.is_channel:
                print(f"{dialog.name}: {dialog.id}")
    
    # start
    client.loop.run_until_complete(main())
    Ответ написан
    4 комментария
  • Хочу сделать что при нажатии кнопка постепенно становится зеленой, но не могу понять, что я делаю не так?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    Заменить:
    button.style.background = linear-gradient(to right, ${color} ${currentWidth}px, transparent ${currentWidth}px);

    На:
    button.style.background = `linear-gradient(to right, ${color} ${currentWidth}px, transparent ${currentWidth}px)`;

    Если бы Вы использовали современную IDE, например WebStorm (PhpStrom итп), то она сразу бы подсказала, где у Вас проблема:
    651ea7052f61d672134203.png
    Ответ написан
  • Как избавиться от ломающих тегов HTML которые создаются пользователем на странице?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    Использовать санитайзеры, например, библиотеки:
    https://github.com/cure53/DOMPurify
    https://github.com/apostrophecms/sanitize-html
    Какие есть способы убрать эту лазейку ?

    Предположим, что пользователь вводит текст и жмет кнопку Сохранить > Получаем текст (на сервере или где?) > Чистим его (библиотеки выше) > Публикуем.
    Ответ написан
    2 комментария
  • Как обернуть в цикл консольную программу на Python?

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

    Есть:
    import time
    from math import sqrt
    
    def visual_effects(f):
        def wrapper(*args, **kwargs):
            print('The result is being calculated, please wait...')
            time.sleep(2)
            res = f(*args, **kwargs)
            print(f'The area of the triangle is: {res} cm.')
    
        return wrapper
    
    @visual_effects
    def area_of_triangle(side1, side2, side3):
        if side1 <= 0 or side2 <= 0 or side3 <= 0:
            print('Error! All sides of the triangle must be greater than zero.')
            return None
        perimeter = (side1 + side2 + side3) / 2
        result = round(sqrt(perimeter * (perimeter - side1) * (perimeter - side2) * (perimeter - side3)), 2)
        return result
    
    # бесконечный цикл, пока пользователь его не прервет
    while True:
        try:
            side1 = float(input('Enter the length of side of triangle 1 (cm): '))
            side2 = float(input('Enter the length of side of triangle 2 (cm): '))
            side3 = float(input('Enter the length of side of triangle 3 (cm): '))
        except ValueError:
            print('Error! Please enter an integer or fractional number for the program to work correctly.')
            continue
    
        area_of_triangle(side1, side2, side3)
    
        user_input = input('Repeat calculate? (yes/no): ').lower()
        if user_input != 'yes':
            break  # Прерываем цикл, если пользователь ответил != yes
    Ответ написан
    Комментировать
  • Как с помощью python прочитать свойство fill-opacity в тэге path?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    1. Заходим на сайт.
    2. Ищем html тег по css селектору.
    3. Достаем значение атрибута fill-opacity.
    4. Печатаем значение атрибута fill-opacity.
    import requests
    from bs4 import BeautifulSoup
    
    # go to website
    url = 'https://example.com'
    response = requests.get(url)
    
    if response.status_code == 200:
        soup = BeautifulSoup(response.text, 'html.parser')
        path_tag = soup.find('path', {'class': 'shape'})  # CSS selector
    
        if path_tag is not None:
            fill_opacity = path_tag.get('fill-opacity', 'Ошибка: fill-opacity не обнаружен!')
        else:
            fill_opacity = 'Ошибка: fill-opacity не обнаружен!'
    else:
        fill_opacity = f'Ошибка: не удалось подключиться к сайту {response.status_code}'
    
    # result
    print(fill_opacity)
    Ответ написан
    Комментировать
  • Как настроить локальную работу с уже созданным проектом Wordpress?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    можно ли как-то этот проект переключить на локальную работу?

    Макеты страниц (Page Layout) в WordPress представляют собой шаблоны отдельных страниц, которые можно настроить, добавив или изменив содержимое блоков из административной панели.

    Соответственно, если это (некая конвертация) не предусмотрено макетом страницы, то ответ - нельзя. С другой стороны, Вы можете подключать свои стили, которые будут перебивать стили макета, но html и js отдельных блоков из макета перебить не удастся.
    Ответ написан
  • Бесплатный API антиплагиата?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Под "антиплагиатом" понимается https://antiplagiat.ru/ ?

    да. Проверка на уникальность, по сути

    Бесплатный API антиплагиата?

    Есть ли бесплатные API?

    https://docs.antiplagiat.ru/ru/api/index.html
    API у них только один, и он принимает токен в качестве одного из параметров запроса. Соответственно, API не может быть полностью бесплатным.
    Ответ написан
    Комментировать
  • Как спарсить начальную цену предмета стим на торговой площадке?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    - Не обновлялась пару лет, но можно исследовать исходники - https://github.com/offish/steam_community_market
    - Посмотреть, что шлет фронт для получения цены - https://tyrrrz.me/blog/parsing-steam-market
    - На край - https://steamapis.com/docs
    Ответ написан
    Комментировать
  • Как на сайте wordpress сделать вход по смс через otp?

    Mike_Ro
    @Mike_Ro Куратор тега WordPress
    Python, JS, WordPress, SEO, Bots, Adversting
    но плагины которые я пробовал не работают.

    Какие пробовали?
    Как на сайте wordpress сделать вход по смс через otp?

    Один из вариантов:
    1. Поставить необходимый плагин.
    2. Написать плагин самому.
    у них сделан вход по смс через OTP , как я понял это бесплатные СМС

    OTP - это лишь метод аутификации (в рамках одной сессии или менее), через одноразовые пароли:
    - Если речь именно про СМС, то не бесплатные. За СМС в любом случае кто то платит, обычно - это тот, кто предоставляет аунтификацию.
    - Если речь про приложение для аунтификации, то наиболее популярные в РФ - это Google Authenticator и Яндекс Ключ. В таком случае - да, код с аунтификацией будет бесплатный.
    - Если речь про Email аунтифиацию - то все тоже самое, что и выше, но отправка пароля идет на Email. Относительно бесплатно.
    Подскажите как можно подключить такое для своего сайта

    Гуглить конкретный вариант аунтификации и искать под него плагин, либо написать самому.
    нормально ли эта технология работает

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

    Это тоже по сути OTP (зависит от того, как настроена).
    Ответ написан
    Комментировать
  • Можно ли с next.js static export отправить данные формы?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    А причём здесь next и в чем проблема отправить данные используя fetch?

    Отправляйте данные как с обычной html страницы, другой вопрос - как Вы преодолеете cors, если таковой имеется.
    Ответ написан
    Комментировать
  • Как заставить бота копировать строки в txt поочередно?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    1. Открыть файл.
    2. Пройтись построчно файла циклом, при каждой итерации которого - "вставлять её куда нужно".
    Ответ написан
    Комментировать
  • Как убрать ошибку в боте?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    TypeError
    'NoneType' object is not subscriptable
    File "C:\Users\Administrator\Desktop\Bot\Bot.py", line 21, in handle_message
    photo=message.photo[-1] # Сохранение фото на ваш компьютер
    File "C:\Users\Administrator\Desktop\Bot\Bot.py", line 35, in
    bot.polling()
    TypeError: 'NoneType' object is not subscriptable

    Грешно обращаться к Null, как к списку или словарю. Добавьте проверку:
    if message.photo:
        photo = message.photo[-1]
        # other code
    else:
        bot.reply_to(message, 'Гони фотку.')
    Ответ написан
    Комментировать
  • Как расшифровать UTM_term?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Хотя нигде никакую рекламу не запускали

    Вот я только что "перешел по рекламе" https://example.com?utm_term=vsznl3w.
    Хотелось бы разобраться, как и кто к нам заходил

    Кто угодно, utm метки, как и другие url параметры не запрещено указывать.
    Также вот тут ничего не понятно, говорит, что источник - yandex или yandex direct, почему yandex считается переходом по рекламе, а не поисковым трафиком?

    Как Яндексу считать мой переход, я же вроде "по рекламе перешел", или нет..?
    Ответ написан
    2 комментария
  • Что делать, если телеграм бот на питоне открывает ссылку на другом устройстве?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Ссылка будет открываться на том компе, на котором запущен скрипт. Нужно отправлять ссылку сообщением в телегу, например:
    import telebot
    
    token = "TOKEN"
    bot = telebot.TeleBot(token)
    
    @bot.message_handler(commands=['website'])
    def send_video_link(message):
        # url
        video_url = 'https://www.youtube.com/watch?v=dQw4w9WgXcQ&ab_channel=RickAstley'
        bot.send_message(message.chat.id, video_url)
    
    @bot.message_handler(commands=['start'])
    def send_welcome_message(message):
        user_name = message.from_user.first_name
        welcome_message = (
            f'Привет, {user_name}!\n'
            'Я с радостью поделюсь с тобой всей статистикой чемпионата F1. Просто отправь запрос!\n'
            'Введи /help, если возникнут вопросы'
        )
        bot.send_message(message.chat.id, welcome_message)
    
    # run bot
    bot.infinity_polling()
    Ответ написан
    1 комментарий