• Как решить задачу по Token Ring?

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

    Для вычисления общего времени передачи данных нужно сложить времена передачи каждого компьютера:

    1 + 2 + 11 + 21 + 46 + 5 + 17 = 103

    Теперь мы знаем, что общее время на передачу данных в одну сторону составляет 103 единицы времени.

    Для определения общего времени на передачу данных в обе стороны нужно умножить это число на 2:

    103 * 2 = 206

    Таким образом, передача данных завершится через 206 единиц времени.
    Написано
  • Как настроить пользовательский курсор при открытом списке select в html?

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

    Наверное добавить url?

    ('Номер телефону', url='tel:+111111')
    Написано
  • Никак не появляется блок с текстом и кнопкой,как заставить их появится?

    Попробуй заменить функцию на эту
    function newEvent() {
        let div = document.createElement('div');
        div.classList.add('event');
    
        let p = document.createElement('p');
        p.classList.add('event__text');
        p.textContent = gData;
    
        div.appendChild(p);
        document.body.appendChild(div);
    }
  • Как проверить IP входящего запроса на сервере?

    Либо так
    const allowedIPs = ['192.168.1.1', '10.0.0.2'];
    
    const server = http.createServer((req, res) => {
      const clientIP = req.connection.remoteAddress;
      if (allowedIPs.includes(clientIP)) {
        // Обработка запроса
      } else {
        res.statusCode = 403;
        res.end('Доступ запрещен');
      }
    });


    Либо использовать express-ipfilter
  • Как обернуть в div только внешний элемент table пропустив все внутренние?

    Попробуй без регулярок
    $doc = new DOMDocument();
    $doc->loadHTML($html);
    $xpath = new DOMXPath($doc);
    
    // Выбери все таблицы без вложенных таблиц
    $tables = $xpath->query('//table[not(.//table)]');
    
    foreach ($tables as $table) {
        $div = $doc->createElement('div');
        $table->parentNode->replaceChild($div, $table);
        $div->appendChild($table);
    }
    
    $html = $doc->saveHTML();
  • Как регулярным выражением получить токен?

    /set-cookie:\s*csrftoken=([^;]+)/i

    $login = 'set-cookie: sessionid=fdsfwg345454543gfdgfdgfda; Domain=.instagram.com; expires=Sat, 02-Mar-2024 14:25:29 GMT; HttpOnly; Max-Age=31536000; Path=/; Secure set-cookie: ds_user_id=5222217854; Domain=.instagram.com; expires=Thu, 01-Jun-2023 14:55:29 GMT; Max-Age=7776000; Path=/; Secure set-cookie: csrftoken=Customvalue54543gfdgfdgfda; Domain=.instagram.com; expires=Fri, 01-Mar-2024 14:25:29';
    
    preg_match_all('/set-cookie:\s*csrftoken=([^;]+)/i', $login, $match);
    
    // Выводим найденное значение
    echo $match[1][0];
  • Как можно обратиться к свойству объекта передав константу из useState?

    Проблема скорее всего возникает из-за того, что TypeScript не может определить тип значения, которое возвращается при обращении к объекту по индексу number
    Попробуй так
    interface WwCodes {
      [key: number]: string;
    }
    
    const wwCodes: WwCodes = {
      0: 'Clear sky',
      1: 'Mainly clear',
      2: 'Partly cloudy',
      3: 'Overcast',
      45: 'Fog',
    };
    
    const [wwCode, setWwCode] = useState<number>(0);
    
    <span>{wwCodes[wwCode]}</span>
  • Как сделать активацию по фразе, а не отрывку?

    А если?
    if text.lower() == "открой вк" or text.lower() == "открой vk":
        webbrowser.open('https://vk.com', new=1)
  • Как получить в сообщении название канала youtube?

    Так?
    function getChannelName() {
      // Задаем ID канала
      var channelId = 'UCBR8-60-B28hp2BmDPdntcQ';
      
      // Выполняем запрос к API YouTube
      var request = gapi.client.youtube.channels.list({
        id: channelId,
        part: 'snippet'
      });
      
      // Обрабатываем результаты запроса
      request.execute(function(response) {
        // Получаем название канала
        var channelName = response.items[0].snippet.title;
        
        // Отображаем название канала в сообщении
        alert('Название канала: ' + channelName);
      });
    }
  • Парсинг html в python?

    artds,
    Да, это из-за того, что метод index может быть вызван только на объекте типа bytes, а не на строке.
    Нужно преобразовать строку html в объект типа bytes.
    Сложно писать код без проверки, сейчас напишу исправление, если не поможет, то уже завтра гляну.
  • Парсинг html в python?

    artds,
    Возможно проблема заключается в использовании другого имени тега 'file_name' и 'name' как вариант.

    Если информация о файлах находится в JavaScript-коде, то можно попробовать библиотеку json для извлечения информации.
    import requests
    import json
    
    # Получаем HTML-код страницы
    url = 'https://www.geooptic.ru/product/lasernyi-skanner-trimble-x7-kit-with-t10x'
    response = requests.get(url)
    html = response.content
    
    # Ищем строку с информацией о файлах
    start = 'files:['
    end = '],'
    start_index = html.index(start) + len(start)
    end_index = html.index(end, start_index)
    files_str = html[start_index:end_index]
    
    # Извлекаем информацию о файлах
    files_info = json.loads('[' + files_str + ']')
    
    # Выводим результат
    for file_info in files_info:
        print(f"{file_info['name']} : {file_info['file_name']}")
  • Парсинг html в python?

    artds,
    import requests
    from bs4 import BeautifulSoup
    import re
    
    # Получаем HTML-код страницы
    url = 'https://www.geooptic.ru/product/lasernyi-skanner-trimble-x7-kit-with-t10x'
    response = requests.get(url)
    html = response.content
    
    # Ищем строку с информацией о файлах
    pattern = re.compile(r'files:\[(.*)\]')
    match = pattern.search(str(html))
    
    if match:
        # Извлекаем информацию о файлах
        files_info = match.group(1)
    
        # Создаем объект BeautifulSoup
        soup = BeautifulSoup(files_info, 'html.parser')
    
        # Находим все элементы 'file_name' и 'name'
        file_names = soup.find_all('file_name')
        names = soup.find_all('name')
    
        # Выводим результат
        for file_name, name in zip(file_names, names):
            print(f"{name.text.strip()} : {file_name.text.strip()}")
  • Можно ли как-то найти все элементы через find_all, которые содержат часть определенного набора символов?

    Если я правильно понял, то можно использовать метод select() объекта BeautifulSoup
    from bs4 import BeautifulSoup
    
    html = '''
    <input id="ctl00_ContentPlaceHolder1_grdProducts_ctl00_ctl05_EditFormControl_tbValidityPeriod"/>
    <input id="ctl00_ContentPlaceHolder1_grdProducts_ctl00_ctl07_EditFormControl_tbValidityPeriod"/>
    <input id="ctl00_ContentPlaceHolder1_grdProducts_ctl00_ctl09_EditFormControl_tbValidityPeriod"/>
    <input id="ctl00_ContentPlaceHolder1_grdProducts_ctl00_ctl11_EditFormControl_tbValidityPeriod"/>
    '''
    
    soup = BeautifulSoup(html, 'html.parser')
    inputs = soup.select('input[id^="ctl00_ContentPlaceHolder1_grdProducts_ctl00_ctl"]')
    for inp in inputs:
        print(inp['id'])

    На выходе получишь
    ctl00_ContentPlaceHolder1_grdProducts_ctl00_ctl05_EditFormControl_tbValidityPeriod
    ctl00_ContentPlaceHolder1_grdProducts_ctl00_ctl07_EditFormControl_tbValidityPeriod
    ctl00_ContentPlaceHolder1_grdProducts_ctl00_ctl09_EditFormControl_tbValidityPeriod
    ctl00_ContentPlaceHolder1_grdProducts_ctl00_ctl11_EditFormControl_tbValidityPeriod
  • MySQL поле с типом JSON как искать по значению внутри многомерного массива и сделать для него индекс?

    Kerm,
    Да, возможно такое, попробуй
    ALTER TABLE `default` ADD COLUMN `FiasAoguid_array` JSON GENERATED ALWAYS AS (`properties` -> '$.FiasAoguid'),
    ADD INDEX `FiasAoguid_index` USING BTREE (`FiasAoguid_array`(1));

    Не за компьютером сейчас, отпишись тогда, я позже посмотрю.
  • MySQL поле с типом JSON как искать по значению внутри многомерного массива и сделать для него индекс?

    Если не планируешь работать с данными SQL, то как вариант, чтобы найти все строки, содержащие значение "da051ec8-da2e-4a66" в массиве "FiasAoguid"
    SELECT * FROM default WHERE JSON_CONTAINS(properties, '["da051ec8-da2e-4a66"]', '$.FiasAoguid');

    Так же создать виртуальную колонку для значения массива, используя функцию JSON_EXTRACT() для извлечения и функцию JSON_ARRAY() для преобразования его в массив JSON. И создать индекс на этой виртуальной колонке
    ALTER TABLE `default` ADD COLUMN `FiasAoguid_array` json GENERATED ALWAYS AS (`properties` -> '$.FiasAoguid'),
    ADD INDEX `FiasAoguid_index` (`FiasAoguid_array`);

    После создания индекса запрос будет выполняться более эффективно
    SELECT * FROM default WHERE JSON_CONTAINS(FiasAoguid_array, '["da051ec8-da2e-4a66"]')

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

    Как минимум в том, что пропущена кавычка перед полем barcode.
    SELECT 
            `id`, `user_id`, `articul_id`, `barcode`, `quantity`
  • Как сделать так чтобы стейт отвечающий за регистрацию не зацикливался?

    Проблема в обработчике состояния SuperStates.CONFIDENT_STATE.
    При любом входящем сообщении на этом этапе, он всегда будет выводить сообщение "Сейчас с вами свяжется менеджер".
    Попробуй изменить обработчик awkward_handler например так, добавив проверку
    @bot.on.message(state=SuperStates.CONFIDENT_STATE)
    async def confident_handler(message: Message):
        keyboard = Keyboard()
        keyboard.add(Text("меню", {"cmd": 'menu'}))
        name = ctx.get("name")
        if ctx.get("notified_manager") is None:
            ctx.set("notified_manager", True)
            await message.answer(f"Сейчас с вами свяжется менеджер", keyboard=keyboard)
        else:
            await message.answer(f"Вы уже обратились к менеджеру", keyboard=keyboard)
  • Как правильно реализовать логику приложения на JS?

    // Проверяем, есть ли значение времени в localStorage
    if (!localStorage.getItem('savedTime')) {
      // Если нет, то сохраняем текущее время
      localStorage.setItem('savedTime', new Date().getTime());
    }
    
    // Устанавливаем интервал, который будет запускаться каждые 30 минут
    setInterval(function() {
      // Получаем сохраненное значение времени из localStorage
      const savedTime = localStorage.getItem('savedTime');
      
      // Проверяем, прошло ли 30 минут с момента сохранения времени
      if (new Date().getTime() - savedTime >= 30 * 60 * 1000) {
        // Если прошло, то обновляем данные
        updateData();
        
        // Сохраняем новое значение времени в localStorage
        localStorage.setItem('savedTime', new Date().getTime());
      }
    }, 30 * 60 * 1000); // интервал в миллисекундах (30 минут)