Задать вопрос
  • Событие keyup в jquery вызывается дважды, почему так происходит?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    В JQuery есть такое понятие "всплытие событий", используя $('*') Вы практически заюзали querySelesctorAll('*') (из чистого JS) и тем самым повесили события на все дочерние элементы.
    // выбирайте не все элементы
    $('*')
    // а более конкретные
    $('.item')
    Ответ написан
    1 комментарий
  • Есть сайт каталог авто как сделать карточки разные?

    Mike_Ro
    @Mike_Ro Куратор тега Поисковая оптимизация
    Python, JS, WordPress, SEO, Bots, Adversting
    Есть сайт с каталогом авто

    Ссылка?

    А то считает пол каталога дублями

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

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    А версию PyCharm писать не надо? А операционки?

    Ладно, хрустальный шар слово молвит - "у нас Windows 11.0 + PyCharm 2023.2 (Professional Edition)", а значит:
    1. Идем в File > Settings > Editor > Color Scheme > Language Defaults > Semantic highlighting.
    2. Жмем галочку Semantic highlighting и в каждый Color вставляем цвет (я вставил одинаковые).
    3. Жмем Apply и видим Ваш скрин (не видим изменений :) ).
    4. Заново открываем каждый Color и пипеткой слегка изменяем цвет, жмем Apply и перезагружаем PyCharm.

    Скрин:
    64ca41825ea46723576906.png
    И получаем подсветку:
    64ca419d3789d857440381.png

    UPD:
    SanviInvi,
    у меня отличается дизайн редактора у тебя другая тема?

    - У меня включен "New UI".
    - Установлена тема: "One Dark theme" > "One Dark Vivid Italic".
    - Шрифт области редактора: "Fira Code".
    - Так же установлен плагин: "Atom Material Icons".
    Ответ написан
    4 комментария
  • Есть ли способ аннотировать аргументы метода переменной класса?

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

    Как вариант, можно закостылить так:
    from dataclasses import dataclass
    from typing import Any, Literal, TypeAlias, Self 
    
    @dataclass()
    class BaseConfig:
        ITEM: TypeAlias = Literal["item1", "item2"]
    
    class MyClass:
        def __init__(self, config: BaseConfig = BaseConfig) -> None:
            self.config = config
    
        def meth(self, item: Any) -> Self:
            if item not in self.config.ITEM:
                raise ValueError(f"Invalid value {item} for item. Expected one of {self.config.ITEM}.")
            ...
    Ответ написан
    Комментировать
  • Как удалить определенные HTML теги?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    const elId = document.querySelector('#id');
    const elsA = elId.querySelectorAll('a');
    
    elsA.forEach((el) => el.remove());

    <a class='1'>
    In CSS1, a class name could start with a digit (".55ft"), unless it was a dimension (".55in"). In CSS2, such classes are parsed as unknown dimensions (to allow for future additions of new units) To make "2x" a valid class, CSS2 requires the first digit to be escaped ".\32x" [2x]

    В CSS не рекомендуется использовать название класса начинающегося с цифры...
    Ответ написан
    1 комментарий
  • Как проверить количество установок определенной библиотеки Python?

    Mike_Ro
    @Mike_Ro Автор вопроса
    Python, JS, WordPress, SEO, Bots, Adversting
    Максим Припадчев
    https://pypistats.org/ , https://piptrends.com/
    или
    https://packaging.python.org/en/latest/guides/anal...
    SELECT
      details.installer.name,
      COUNT(*) as download_count,
    FROM `the-psf.pypi.downloads*`
    WHERE
    file.project = 'dvc'
    AND _TABLE_SUFFIX
    BETWEEN FORMAT_DATE('%Y%m%d', DATE('2020-01-04'))
    AND FORMAT_DATE('%Y%m%d', DATE('2020-02-04'))
    GROUP BY details.installer.name
    Ответ написан
    Комментировать
  • Можно ли вставлять свёрстанные блоки на другие страницы HTML?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Нужно верстать их снова и дублировать стили, или же я могу просто копировать уже свёрстанные блоки

    но тогда будут разные названия классов и уже получиться не по БЭМ

    При это БЭМ наоборот намекает - использовать повторно повторяющиеся блоки...

    но тогда будут разные названия классов

    Можно сделать так:
    .price.price--one .price-card .price-card__name
    .price.price--two .price-card .price-card__name

    Повторяющийся блок:
    .price-card .price-card__name
    Дополнительная стилизация "повторяющегося блока".
    .price.price--one .price-card .price-card__name

    UPD:
    Обратите внимание на ответ zkrvndm
    Ты можешь использовать iframe для отображения одного и того же блока на множестве страниц.

    Для конкретно Вашей задачи я таким бы не занимался (БЭМ это итак решает), а вот для SEO (органического продвижения) фреймы будут очень кстати, они позволят избежать склейки страниц в выдаче.
    Ответ написан
    1 комментарий
  • Как ограничить количество выделяемой оперативной памяти на каждый проект nginx?

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

    Вы прям написали часть того - "зачем нужен Docker".

    для оптимизации сервера и балансировки нагрузок помимо написанного выше

    Вы прям написали часть того - "зачем нужен Kubernetes".

    при сильной нагрузке выдавал ошибку или падал

    Может не стоить рубить с плеча, а просто поставить ожидающих в очередь?
    Ответ написан
    Комментировать
  • Как изменить прозрачность для background-color?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Как вариант - использование переменной:
    $color-base: 64, 126, 201;
    
    .element {
      background-color: rgba($color-base, 1);
    }
    
    .element-transparent {
      background-color: rgba($color-base, 0.3);
    }

    Чуть сложнее:
    $color-base: 64, 126, 201;
    $alpha-1: 1;
    $alpha-2: 0.3;
    
    .element {
      background-color: rgba($color-base, $alpha-1);
    }
    
    .element-transparent {
      background-color: rgba($color-base, $alpha-2);
    }
    Ответ написан
    Комментировать
  • Почему собранный в exe python скрипт не работает?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Предположу, во время компиляции PyInstaller не корректно обработал зависимости или пути?
    Ответ написан
    Комментировать
  • Как приостановить работу map до выполнения определённых условий пере return?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    Пишу на React

    Какой интересный язык.

    const [imageUrls, setImageUrls] = useState([]);
    
    async function readAsDataURL(image) {
        return new Promise((resolve, reject) => {
            const reader = new FileReader();
            reader.onload = () => resolve(reader.result);
            reader.onerror = reject;
            reader.readAsDataURL(image);
        });
    }
    
    useEffect(() => {
        (async () => {
            try {
                const urlPromises = selectedImages.map(readAsDataURL);
                const urls = await Promise.all(urlPromises);
                setImageUrls(urls);
            } catch (error) {
                console.error(error);
            }
        })();
    }, [selectedImages]);
    
    return imageUrls.map((url, index) => <img src={url} alt="" key={`previewImage:${index}`} />);
    Ответ написан
    5 комментариев
  • Насколько важно знать хорошо математику аналитикам?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Насколько важно знать хорошо математику аналитикам?

    Настолько, чтобы соответствовать требования работодателя/заказчика.
    Ответ написан
    Комментировать
  • Как извлечь вложенный элемент json с помощью python?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    TypeError: string indices must be integers, not 'str'

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

    {
      "data": {
        "teamStanding": [
          {
            "id": "team_1",
            "score": 103,
            "players": [
              {
                "user": {
                  "name": "player_1",
                  "id": "player_1"
                },
                "score": 35
              },
              {
                "user": {
                  "name": "player_2",
                  "id": "player_2"
                },
                "score": 30
              }
              // и так далее...
            ]
          },
          // Другие команды...
        ]
      }
    }

    import json
    
    path = 'test.json'
    
    with open(path, 'r') as file:
        data = json.load(file)
    
    for team in data["data"]["teamStanding"]:
        if team["id"] == "team_1":
            for player in team["players"]:
                print(player["user"]["name"], player["score"])
    Ответ написан
    Комментировать
  • Как сделать вариации команд с member?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    с необязательным аргументом member

    Где этот аргумент присутствует?
    Участник вводит просто команду чай

    Куда вводит?
    и ему выводит сообщение: (ник участника) выпил чай

    Куда выводит?

    Мой хрустальный шар кинул монетку и предположил, что речь идет о Телеграм боте:
    import discord
    from discord.ext import commands
    
    bot = commands.Bot(command_prefix='!')
    
    @bot.command()
    async def чай(ctx, member: discord.Member = None):
        if member is None:
            await ctx.send(f'{ctx.author.name} выпил чай.')
        else:
            await ctx.send(f'{ctx.author.name} пьёт чай с {member.name}.')
    
    bot.run('your-token-here')
    Ответ написан
    Комментировать
  • Почему у введенного числа в input тип данных(typeof) -string?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    Почему у введенного числа в input тип данных(typeof) -string?

    Так проще, т.к. неизвестно, что именно прилетит из input, а тут по умолчанию - string, а дальше Ваши проблемы.
    Ответ написан
    4 комментария
  • Из-за чего код не работает?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Обработчики событий в React должны быть написаны с большой буквы.

    Заменить:
    <button onclick={this.handleclick} >
    На:
    <button onClick={this.handleclick} >

    UPD: может все таки композиция, вместо классов?
    Ответ написан
    1 комментарий
  • Как парсить приложение на андройд?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Возможно ли парсить приложение на андройд, не имеющее веб версии?

    Возможно, используйте Appium + эмулятор Apple/Android устройств (либо, используйте реальное устройство).
    Ответ написан
    Комментировать
  • Сколько времени хранить старый домен при переезде на новый?

    Mike_Ro
    @Mike_Ro Куратор тега Поисковая оптимизация
    Python, JS, WordPress, SEO, Bots, Adversting
    На домене old.com настрою переадресацию на новый, при помощи .htaccess

    Надеюсь, каждой страницы?
    Достаточно ли будет месяца или это более длительный процесс?

    Зависит от количества и нагруженности страниц. Небольшим сайтам хватает 3 мес.
    Ответ написан
  • Какое техническое решение выбрать под проект?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Но не знаю, какое техническое решение взять? Писать на нативном РНР? Взять готовый фрэймворк?

    Что знаете, на том и пишите.

    Если Вы задаёте вопрос про "фреймворки или нет", значит Вам темболее необходимо использовать фреймворк. Свой велосипед Вы в любом случае напишите хуже.

    Если Вы не разработчик, то наймите ПМ или разраба, он Вам и сообщит, на чем именно он будет писать.
    Ответ написан
    1 комментарий
  • Как правильно пройтись по всем элементам на странице?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    Пытаюсь через document.querySelectorAll но тоже выходит ошибка

    Надо лучше пытаться:
    <script>
    // Получаем все карточки товаров
    const cards = document.querySelectorAll('.cart');
    
    cards.forEach((card) => {
      const addToCartLink = card.querySelector('.buy_button');
      const inputElement = card.querySelector('.kolvo input');
      const plusButton = card.querySelector('.kolvo .plus');
      const minusButton = card.querySelector('.kolvo .minus');
    
      // Функция для обновления ссылки при изменении значения input
      const updateLink = () => {
        const inputValue = inputElement.value;
        const newLink = addToCartLink.getAttribute('href').replace(/q=\d+/, 'q=' + inputValue);
        addToCartLink.setAttribute('href', newLink);
      };
    
      // plus
      plusButton.addEventListener('click', () => {
        inputElement.stepUp();
        updateLink();
      });
    
      // minus
      minusButton.addEventListener('click', () => {
        inputElement.stepDown();
        updateLink();
      });
    
      // Обработчик события при изменении значения input
      inputElement.addEventListener('input', () => {
        updateLink();
      });
    });
    </script>
    <div class="cart">
    <a class="buy_button" href="/addtocart.php?id=387&q=1" rel="nofollow">Добавить в корзину</a>
    
    <div class="kolvo">
    <span class="minus">-</span>
    <input type="number" value="1" min="1">
    <span class="plus">+</span>
    </div></div>
    Ответ написан
    3 комментария