• Не приходит в голову алгоритм лучше. Как сделать лучше?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    Ну как минимум цикл в повторяющихся местах:
    for (let i = 0; i < clickCount; i++) {
      elementstypeWorkFirst[i].innerHTML = '';
    }
    Ответ написан
    5 комментариев
  • Веб-сервер дома на виндовс для работы с python?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Начните с изучения Django и формирования более конкретных вопросов.
    Ответ написан
    Комментировать
  • Как редактировать карточку товара в Woocommerce на Wordpress?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Ответ написан
    Комментировать
  • Как убрать мерцание консоли при использовании os.system('cls')?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    Curses? В ней можно использовать методы clear() и refresh() для обновления данные консоли без мерцания.
    Ответ написан
    1 комментарий
  • Почему dispatch нельзя использовать в потоке кода при отрисовке компонента?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Почему dispatch нельзя использовать в потоке кода при отрисовке компонента?

    - Проблемы с производительностью: Если бы dispatch вызывался прямо в теле компонента (то есть во время его рендеринга), каждый раз, когда компонент рендерится (например, из-за изменения других данных на странице), он бы снова и снова добавлял товар в корзину (в контексте интернет-магазина). Это приведет к бесконечному циклу и сильно замедлит работу приложения.
    - Непредсказуемость поведения: Поскольку рендеринг компонентов может происходить по разным причинам и в разное время, использование dispatch в процессе может привести к непредсказуемым и нежелательным изменениям в состоянии приложения. В контексте интернет-магазина, товары могли бы добавляться в корзину без Вашего ведома.
    - Сложности в управлении состоянием: Использование dispatch во время рендеринга усложняет понимание того, когда и почему происходят изменения в состоянии приложения, что затрудняет отладку и поддержку кода.

    Именно поэтому лучше использовать dispatch внутри обработчиков событий (например, при клике на кнопку) или внутри useEffect, где Вы имеете полный контроль над тем, когда и по какой причине должны происходить изменения состояния.
    Ответ написан
    1 комментарий
  • Executable для библиотеки puresnmp?

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

    Пробовали собирать exe с указанием прямого пути до puresnmp?
    pyinstaller --onefile --paths=C:\Users\Username\AppData\Local\Programs\Python\Python39\Lib\site-packages\puresnmp script.py

    Еще вариант, можно использовать hook файлы, в которых указываются пути до файлов, который должны быть включены в сборку, например:
    from PyInstaller.utils.hooks import collect_submodules, collect_data_files
    
    hiddenimports = collect_submodules('puresnmp')
    datas = collect_data_files('puresnmp')

    При сборке, необходимо передать hook файл следующей командой:
    pyinstaller --onefile --additional-hooks-dir=абсолютный_путь_до_hook.py script.py
    Ответ написан
    Комментировать
  • Как добавить количество дней к текущей дате?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    Зачем Вы добавляете дни к настоящей дате, а не к дате с обучением?
    // ...
    // var newDate = moment().add(missingDays, 'days');
    var newDate = endDate.clone().add(missingDays, 'days'); // update
    // ...
    Ответ написан
  • Как решить проблему с Allowed memory size в плагине Worpress?

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

    Я в php не силен, но быстрой гуглежкой нашел вариант логирования. Посмотрите, что будет писать и какое время займет различные части выполнения Вашего кода:
    - Пишем сообщение непосредственно в файл журнала ошибок сервера:
    error_log('Лог переменной: ' . print_r($var, true));

    - Получение временных меток перед и после выполнения кода:
    microtime(true)
    Ответ написан
  • Какая самая быстрая и эффективная библиотека в JS для работы с деньгами?

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

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Тайтл: Аренда Авто с Водителем в Сочи | Транспортные услуги

    Транспортные услуги - высокочастотный ключ, не рекомендую его сюда вставлять. Рекомендую сделать следующий ключ: Аренда авто с водителем в Сочи от 300 руб. Это более целевой ключ + более конверсионный, т.к. указана стоимость.
    Под него сделать заголовки:
    h1: Надежная аренда авто с водителем в Сочи
    h2: Профессиональная аренда авто с водителем и заказом в Сочи
    В вордстате отображает что лучше использовать слово авто нежели автомобиль.

    Лучше.

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

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Допустим есть сайт, продающий коттеджи. Пользователь находит этот сайт в поисковике google по запросу "Коттеджи купить в городе N" и переходит на него. Если на сайте установлена система аналитики rambler top-100 или яндекс метрика, то в отчётах будет ли видна поисковая фраза, приведшая пользователя на сайт?

    Если не переданы url параметры, то Поисковик видит ключ лишь со своей выдачи (Яндекс видит ключ, который пришел из Яндекса, но не видит ключ того, кто пришел из Google).
    Шифруется ли Url поискового запроса вида гуглком/search?q=слово1+слово2 ?

    Нет, но Вы можете это сами посмотреть, вот ключ hash в Google:
    https://www.google.com/search?q=hash
    Яндекс:
    https://www.yandex.ru/search/?text=hash
    Ответ написан
    2 комментария
  • Как внешне открыть файл с помощью python?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    Суть в том, чтобы открывать файл нажатием на него, а не выбором в приложении. (Как при открытии тех же .docx и .txt файлов, но с собственным расширением)

    Ниче не понятно...

    Пример открытия файла:
    import subprocess  # from all OS
    
    # open file win32
    filename = 'path/to/file.doc'
    subprocess.run(['open', filename])
    
    # subprocess.run(['open', filename])  # macOS
    # subprocess.run(['xdg-open', filename])  # linux
    Ответ написан
    4 комментария
  • Как сделать многостраничный сайт (онлайн-каталог)?

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

    Есть, называется - cистема управления содержимым (CMS, Content Management System).
    вручную верстать каждую страничку это бред

    В большинстве CMS, Вы создаете шаблон страницы, который будет выводить "содержимое" страницы. Рекомендую сразу гребсти в сторону WordPress+WooCommerce, а когда его станет Вам не хватать (и Вы поймете, чего именно не хватает) - выберите себе более узкоспециализированный инструмент.
    Ответ написан
    2 комментария
  • Что я не так делаю?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Вотакая ошибка: cannot access local variable 'd' where it is not associated with a value

    Обращение к переменной d происходит вне контекста (вне цикла for d in cur.fetchall()).

    Попробуйте так:
    for d in cur.fetchall():
        await call.message.edit_media(InputMediaPhoto(media=d['photo'], caption=smiles[page][1]), reply_markup=kb.paginator(url=d['url'], page=page))
    Ответ написан
    5 комментариев
  • Не могу определиться с пайплайном, как разобраться?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    Изучил основы JavaScript, понял что всякие манипуляции DOM мне не нужны, потому что это не используется больше

    Где и кем больше не используется?
    Думаю такой, может мне надо выучить React?

    Но есть почему-то ощущение что React в чистом виде мне не нужен, чтобы пользоваться Next.js.

    NextJS: The React Framework for the Web...
    А в "грязном" виде React какой?
    Я остановился и понял что я занимаюсь какой-то фигней. Что я хватаю отовсюду понемногу знаний, но они не складываются в общую картинку.

    Собственно вопрос: по какому пути лучше пойти, чтобы потихоньку прийти к желаемому?

    Все так и есть. Вам необходимо изучать JS в следующем порядке:
    1. Vanilla JS.
    2. React.
    3. Frontend React + NextJS.
    4. Fullstack React + NextJS (+NestJS?).
    При этом чтобы не потратить время впустую на изучения вещей, которые абсолютно не нужны.

    А вот здесь интересный момент. Видите ли, исходя из количества вакансий, NodeJS и все ее производные в качестве backend фреймворков - не сильно востребованы, относительно более специализированных backend языков/фреймворков. Если у Вас нет особой страсти к NodeJS, то рекомендую сфокусироваться лишь на frontend (учитывая, Ваш контекст), а затем (если будет возможность) - учить в дополнение к frontend более специализированные backend языки/фреймворки.
    Ответ написан
    2 комментария
  • Как исправить TypeError: Node() takes no arguments?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    # class Node:
    #     def init(self, x, y, next):
    #         self.x = x
    #         self.y = y
    #         self.next = next
    
    #     def repr(self):
    #         return str((self.x, self.y))
    
    class Node:
        def __init__(self, x, y, next=None):
            self.x = x
            self.y = y
            self.next = next
    
        def __repr__(self):
            return str((self.x, self.y))
    Ответ написан
    Комментировать
  • Как определить изменение состояния видимости элемента?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    Расширю ответ imko кодом:
    // return true, if element visible
    function isVisible(element) {
      return window.getComputedStyle(element).display !== 'none';
    }
    
    // MutationObserver
    const observer = new MutationObserver((mutations, obs) => {
      const modal = document.querySelector('#modalWindow'); // modal selector
      const dropdown = document.querySelector('#dropdownMenu'); // dropdown menu selector
    
      // check is visible?
      if (isVisible(modal) && isVisible(dropdown)) {
        console.log('Element is visible');
        obs.disconnect();
      }
    });
    
    // config
    const config = {
      attributes: true,
      attributeFilter: ['style']
    }
    
    // run
    observer.observe(document.querySelector('#modalWindow'), config);
    observer.observe(document.querySelector('#dropdownMenu'), config);
    Ответ написан
    1 комментарий
  • Ошибка установка плагинов WP. как исправить?

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

    wp-config.php:
    define('WP_TEMP_DIR', dirname(__FILE__) . '/wp-content/test/');

    Важно! Директория /wp-content/test/ уже должна существовать.
    Ответ написан
    1 комментарий
  • Как определить локатор?

    Mike_Ro
    @Mike_Ro Куратор тега Selenium
    Python, JS, WordPress, SEO, Bots, Adversting
    BS4:
    import requests
    from bs4 import BeautifulSoup
    
    # go to url
    url = "example.com"
    res = requests.get(url)
    
    # pasing page
    soup = BeautifulSoup(res.text, 'html.parser')
    
    # search "Черновик" from span
    els = soup.find_all(lambda tag: tag.name == "span" and "Черновик" in tag.text)
    
    # ptint
    for els in el:
        print(el.text)

    Важно! Если необходимый элемент появляется динамически, то BS4 не сможет его дождаться.
    Ответ написан
    1 комментарий