• На сколько разрешено перепост с заблокированных сайтов и разумно ли это?

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

    Он заблочен РКН, но не признан экстремистской организацией, в отличие от инсты и fb.
    Правила твиттера, при цитирование, Вы должны поставить ссылку на источник.
    С одной стороны мне кажется её рискованно делать, с другой видел много новостей, которые пришли с заблокированных сайтов и всё вроде нормально.

    Ошибка выжившего, Вас не будут трогать, пока Вы не представляете интереса.
    Ответ написан
    Комментировать
  • Как прокрутить таблицу на странице, которая сама не скроллится?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    Вам необходимо скролить не страницу, а элемент. Вот мой пример, как скролить определенный элемент: Как проскролить в определенной облачи экран в selenium?
    Ответ написан
  • Fake useragent Error verify?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    got an unexpected keyword argument 'verify_ssl'

    Ну там же на русско-питонячьем написано, что в конструкторе класса FakeUserAgent не поддерживается аргумент verify_ssl.

    https://pypi.org/project/fake-useragent/
    0.1.6 April 2, 2017
    verify_ssl options added, by default it is True (urllib.urlopen ssl context for Python 2.7.9- and 3.4.3- is not supported)
    1.2.0 August 2, 2023
    Parameter use_external_data=True and verify_ssl are removed. If you use those parameters, just remove it in your code!
    Ответ написан
  • Как указать в коде, что заданный индекс выходит за границу всей строки?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    def f(string, index, length):
        return not (length < 0 or index < 0 or index >= len(string) or length + index > len(string))
    
    string = 'Winter is coming'
    
    print(f(string, 4, 4))
    # True
    
    print(f(string, 4, -1))
    # False
    
    print(f(string, -1, 4))
    # False
    
    print(f(string, len(string), 4))
    # False
    
    print(f(string, len(string) - 3, 5))
    # False
    Ответ написан
    6 комментариев
  • Как полученный список разделить на три столбца, содержащие одинаковые по высоте и ширине ячейки?

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

    Ответ написан
  • Что делает единичная звездочка в аргументах метода Python?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    Что делает единичная звездочка в аргументах метода Python?

    namedtuple(
    typename,
    field_names,
    *,
    rename=False,
    defaults=None,
    module=None,
    )

    Ни разу не встречал такое раньше, в документации тоже не смог откопать

    PEP 3102
    Ответ написан
    Комментировать
  • Как редактировать содержимое input?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    Подскажите, как изменить содержимое input в html?

    <div class="ant-input-number-input-wrap">
        <input autocomplete="off" role="spinbutton" step="1" class="ant-input-number-input" value="100&nbsp;000" aria-valuenow="100000">
    </div>

    const input = document.querySelector('.ant-input-number-input');
    input.value = 'new value';

    Если редактировать непосредственно в атрибутах (value и aria-valuenow), то в самом input на странице изменения не отображаются (остается значение "100 000"), на сервер возможно уйдет значение из этих атрибутов, но как обновить отображение?

    Можно использовать MutationObserver для наблюдения за изменения значения атрибута aria-valuenow, и сразу менять значение input:
    const cb = (mutationsList, observer) => {
        for (const mutation of mutationsList) {
            if (mutation.type === 'attributes' && mutation.attributeName === 'aria-valuenow') {
                mutation.target.value = mutation.target.getAttribute('aria-valuenow');
            }
        }
    }
    
    const input = document.querySelector('.ant-input-number-input');
    const observer = new MutationObserver(cb);
    observer.observe(input, {attributes: true});
    Ответ написан
  • Как спарсить сайт, требующий авторизацию с кодом из смс?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    Какие есть способы для решения задачи (желательно из ЯП использовать python)

    Желательно - это "не обязательно".
    Тинькофф сбрасывает любые сессии каждые 12 часов

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

    - Получать смс на временный номер, используя специализированные сервисы с api.
    - Поставить на телефон приложение, которое будет перехватывать определенные смс и слать их указанным образом по указанному адресу, например SMS forwarder или SMS Backup & Restore.
    - Написать свое приложение (если не доверяете чужим), которое сделает все тоже самое, что пункт выше, но здесь будет использоваться не python, а kordova/react-native/flutter/kotlin.
    Ответ написан
    Комментировать
  • Автоматическая генерация контента на станице на основании GET параметров, хороший вариант для SEO?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    Автоматическая генерация контента на станице на основании GET параметров, хороший вариант для SEO?

    Подгружается не только содержимое, но еще меняет title и description.

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

    По сути, Вы будите показывать ПС разные данные в рамках 1 страницы. Вы можете сыграть в рулетку с ПС и попытаться спустя 5-10 сек изменять контент страницы на основе url параметров, я уже сыграл.
    С точки SEO это вообще будет как-то продвигаться или для каждого вопроса делать отдельную страницу?

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

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Попытка понять мыли автора №1:


    Попытка понять мыли автора №2:
    Ответ написан
  • Как напечатать слово посимвольно в цикле while в обратном порядке?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    def f(word):
        i = len(word) - 1
        while i >= 0:
            print(word[i])
            i -= 1
    
    f('abcde')
    
    # e
    # d
    # c
    # b
    # a
    Ответ написан
    1 комментарий
  • Как запускать код без остановки?

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

    - Запускать циклом код, чтобы он выполнял главную функцию раз в X минут.
    - Запускать кроном основной скрипт раз в X минут.
    - Подписаться на событие и выполнять скрипт при наступление этого события (сложнее).
    нужен ли для этого сервер

    Для этого нужен компьютер с выходом в интернет, а как он будет называться - не имеет значения.
    Ответ написан
  • Dango vs Spring Boot для веб-приложения. Что выбрать?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Хочу написать тяжелое веб-приложение.

    Круг пользователей не более двух тысяч человек.

    Что означают все эти буквы в цифрах? Сколько rps в пике ожидается?
    Если определить это не так легко, то хотя бы какие критерии для сравнения необходимо учитывать

    - Знание конкретного ЯП и его фреймворка.
    - Более быструю скорость разработки на Python и растущую сложность поддержки в процессе роста проекта из за своей скриптовой сущности Python.
    - Производительность Python>Django.
    Ответ написан
    Комментировать
  • Как разработчики пользуются Git в компаниях?

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

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

    Вы только что сами ответили на свой вопрос. [сложность_проекта] * [количество_разработчиков] = [сложность_разработки]
    Ответ написан
    Комментировать
  • Почему теги "strong" и "b" рекомендуется заменять на стили CSS?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Вопрос по СЕО, почему СЕОшники говорят, что теги и не рекомендуется использовать на сайтах, лучше стили CSS использовать?

    Потому что нужно грамотнее выбирать сеошников. Основной аргумент таких сеошников - для оптимизации, ПС парсит лишь текст со страницы, оставляя html, скрипты и стили. На счет скриптов и части стилей - это может и верно, но не html.

    Нужно использовать теги в первую очередь, а затем, стилизовать их при необходимости (без крайностей). Но имейте ввиду, поисковики давно понимают, выделенный ли текст перед ними, или обычный. По моим наблюдениям, если выделить текст стилями, то сильного эффекта это не приносит, но вот если выделить текст тегом strong, то эффект заметен. Аналогичная ситуация с тегом strong и преобразованием его в обычный текст через css - поисковики это видят и не особо ранжируют этот текст из общей массы.
    <div class="strong">Не важный текст.</div>
    <strong style="font-weight: 400">Не важный текст.</strong>
    <strong class="strong-class">Важный текст.</strong>
    Ответ написан
  • Как настроить нагрузоспособность Nginx из расчета процессоров для стабильной работы?

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

    Т.к. четкого ТЗ не указано, то выдумаю свой конфиг, с 4 ядрами и 8 гигами оперативы, тогда следующие действия:

    Передадим параметры железа nginx-у, nginx.conf:
    worker_processes  4; # cores
    events {
        worker_connections  1024; # 1024 * 4 ram = 4096 (max all rps)
    }


    Настроим ограничения так, чтобы каждый ip мог делать не более 10 rpm (в минуту), nginx.conf:
    http {
        limit_req_zone $binary_remote_addr zone=mylimit:10m rate=10r/m;
    
        server {
            location / {
                limit_req zone=mylimit burst=20 nodelay; # we put no more than 20 requests in the queue over the limit (anti DDoS)
            }
        }
    }

    Эти настройки помогут контролировать общую нагрузку на сервер и предотвратят его перегрузку за счет ограничения количества обрабатываемых запросов как в целом (через worker_connections), так и на уровне отдельных IP-адресов (через limit_req_zone и limit_req). Это эффективный способ защиты от спама и DDoS, а также обеспечивает равномерное распределение ресурсов сервера между всеми пользователями.
    Ответ написан
    Комментировать
  • Как через xpath достать язык страницы?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Как через xpath достать язык страницы?

    Если в html имеется атрибут lang, то можно получить его значение: /html/@lang
    Ответ написан
    Комментировать
  • Можно ли модулем requests скачать файл формируемым после запроса?

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

    Requests скачивает файлы, которые генерируются в ответ на запрос, а не после него.
    Remote end closed connection without response

    Ошибка скорее связана с сетью или доступом к ресурсу.
    Ответ написан
    Комментировать
  • Как автоматизировать план работы организации?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Если я правильно понял вопрос, то Вам нужна система управления проектами, вот лучшее, что мне попадалось в РФ (исключая санкционку):
    - Битрикс24.
    - Мегаплан.
    - Yandex Tracker.
    Ответ написан
    Комментировать
  • Как изменить переменную index, чтобы не работал бесконечно?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    def print_numbers(last_number):
        i = last_number
        while i >= 1:
            print(i)
            i -= 1
        print('finished!')
    
    print_numbers(last_number=4)
    
    # 4
    # 3
    # 2
    # 1
    # finished!
    Ответ написан
    1 комментарий