СПОСОБ И СИСТЕМА УПРАВЛЕНИЯ ОТОБРАЖЕНИЕМ ВЕБ-СТРАНИЦЫ Российский патент 2024 года по МПК G06F3/484 

Описание патента на изобретение RU2813299C2

Область техники, к которой относится изобретение

[01] Настоящая технология в целом относится к просмотру веб-страниц и, в частности, к способу и системе для управления отображением некоторых элементов макета на веб-странице.

Уровень техники

[02] Когда пользователь просматривает веб-страницы в сети (такой как сеть Интернет), с использованием браузерного приложения (такого как браузерное приложение Yandex.Browser™, браузерное приложение Google Chrome™, браузерное приложение Opera™ и т.п.), ему могут предлагаться подсказки в некоторых элементах макета веб-страницы. Например, веб-страница способна получать информацию от пользователя и, соответственно, может содержать поле ввода для текстовых входных данных пользователя, таких как адрес доставки пользователя, для которых в поле ввода может предлагаться автозаполнение.

[03] В одном примере подсказки могут предоставляться браузерным приложением. В частности, браузерное приложение может (а) сохранять пользовательские данные, вводимые в различных элементах макета, по мере просмотра пользователем веб-страниц и (б) при определении наличия поля ввода на веб-странице, предназначенного, например, для ввода адреса, информации банковской карты, наименования продукта, предоставлять соответствующие входные данные, которые пользователь ранее вводил с помощью браузерного приложения. В частности, такие входные данные могут быть представлены в виде автоматически заполненной текстовой строки или раскрывающегося меню.

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

[05] Это приводит к возможности возникновения конфликта между подсказками, предоставленными браузерным приложением и веб-страницей, например, возможно их наложение друг на друга в поле ввода, в котором пользователь предоставляет свои входные данные, что может негативно влиять на восприятие пользователем взаимодействия с веб-страницей.

[06] Для решения описанной выше технической проблемы предложены некоторые известные подходы.

[07] В патенте US9330200B2 «System and method for presenting input suggestions in input fields of a specific type in web pages by replacing the input field with a combo box» (Capital Intellect Inc., выдан 3 мая 2016 г.) описаны системы и способы отображения подсказок для входных данных на веб-страницах, содержащих поле ввода для получения пользовательских входных данных конкретного вида. В пользовательском устройстве хранится модуль, расположенный удаленно от базы данных, содержащей подсказки для входных данных. Модуль обнаруживает наличие полей ввода конкретного вида на веб-странице. Для каждого обнаруженного поля ввода конкретного вида модуль формирует комбинированный управляющий элемент, отображаемый так, чтобы закрывать и визуально заменять поле ввода. В комбинированных управляющих элементах отображаются подсказки для входных данных из базы данных. База данных может обновляться с целью добавления или удаления подсказок для входных данных на конкретных веб-сайтах, определенных как допустимые или недопустимые для этих веб-сайтов. Анализ допустимости подсказок для входных данных может основываться на результатах анализа страницы, отправленных из модуля, при этом анализ выполняется до отправки предлагаемой подсказки для входных данных и после нее.

[08] В патенте US7716596B2 «Dynamic input field protection» (Twitter Inc., выдан 11 мая 2010 г.) описаны компьютерный способ и компьютерный программный продукт для защиты предварительно заполненного пользовательского поля ввода на предоставленной веб-странице от непреднамеренной перезаписи. Способ определяет предварительно заполненное поле ввода путем обнаружения наведения на него указателя мыши. В ответ на пользовательскую команду изменения состояния предварительно заполненного поля ввода способ переключает первоначально разблокированное предварительно заполненное поле ввода в заблокированное состояние или переключает первоначально заблокированное предварительно заполненное поле ввода в разблокированное состояние.

Раскрытие изобретения

[09] Следовательно, требуются системы и способы, позволяющие исключать, уменьшать или преодолевать ограничения известных технологий.

[010] Разработчики настоящей технологии установили, что конфликтов между подсказками, предоставленными браузерным приложением и веб-страницей, можно избежать, если элементы макета последней, в которых веб-страница способна предоставлять свои подсказки, заранее определены до того, как пользователь активирует их для ввода данных в них.

[011] В частности, разработчики разработали способы и системы, предназначенные для анализа ответов элементов макета веб-страницы на имитируемые пользовательские действия, например, такие как проверка обращения (hit testing). В частности, если элемент макета веб-страницы изменяет свой внешний вид в ответ на соответствующее имитируемое пользовательское действие, это может указывать на способность веб-страницы предоставлять в нем свои персонализированные подсказки. Настоящие способы и системы предназначены для того, чтобы запрещать браузерному приложению предоставлять персонализированные подсказки браузера в этом элементе макета.

[012] Таким образом, различные не имеющие ограничительного характера варианты осуществления настоящей технологии обеспечивают преимущество одних подсказок перед другими, например, персонализированных подсказок веб-страницы перед персонализированными подсказками браузера, и предотвращают конфликты между ними в элементе макета, такие как их наложение друг на друга, что способно положительно влиять на восприятие пользователем.

[013] Разработчики также установили, что настоящие способы и системы определения элементов макета, используемых для вывода подсказок веб-страницы, особенно удобны, когда веб-страница разработана с использованием языка программирования JavaScript или языка программирования CSS (Cascading Style Sheets, каскадные таблицы стилей), исходные коды которых могут не обеспечивать полных данных о видах элементов макета, подлежащих отображению на веб-странице, в отличие от, например, языка HTML (HyperText Markup Language, язык гипертекстовой разметки).

[014] В частности, согласно первому аспекту настоящей технологии реализован способ управления отображением веб-страницы в браузерном приложении. Способ выполняется процессором электронного устройства, выполняющего браузерное приложение. Браузерное приложение способно предоставлять персонализированные подсказки браузера в по меньшей мере одном активируемом пользователем элементе макета веб-страницы. Способ включает в себя: получение процессором данных, представляющих веб-страницу, подлежащую отображению в браузерном приложении; определение на веб-странице на основе этих данных по меньшей мере одного активируемого пользователем элемента макета, демонстрируемого во время отображения веб-страницы; инициирование процессором имитируемого пользовательского действия с по меньшей мере одним активируемым пользователем элементом макета; определение процессором того, инициирует ли имитируемое пользовательское действие изменение макета, указывающее на способность веб-страницы предоставлять в по меньшей мере одном активируемом пользователем элементе макета персонализированные подсказки веб-страницы, сформированные веб-страницей независимо от браузерного приложения; запрещение процессором предоставления браузерным приложением персонализированных подсказок браузера в по меньшей мере одном активируемом пользователем элементе макета на веб-странице во время ее отображения, если изменение макета указывает на способность веб-страницы предоставлять персонализированные подсказки веб-страницы в этом по меньшей мере одном активируемом пользователем элементе макета.

[015] В некоторых вариантах осуществления способа данные, представляющие веб-страницу, содержат исходный код на языке JavaScript и/или на языке CSS.

[016] В некоторых вариантах осуществления способа для инициирования имитируемого пользовательского действия способ дополнительно включает в себя: получение процессором схемы сканирования для по меньшей мере одного активируемого пользователем элемента макета, содержащей множество точек, представляющих внешний вид по меньшей мере одного активируемого пользователем элемента макета веб-страницы; применение процессором схемы сканирования в области по меньшей мере одного активируемого пользователем элемента макета, при этом инициирование имитируемого пользовательского действия с по меньшей мере одним активируемым пользователем элементом макета включает в себя инициирование имитируемого пользовательского действия с каждой точкой из множества точек.

[017] В некоторых вариантах осуществления способа инициирование имитируемого пользовательского действия с точкой из множества точек выполняется с заранее заданным интервалом времени.

[018] В некоторых вариантах осуществления способа способ дополнительно включает в себя увеличение процессором заранее заданного интервала времени, если имитируемое пользовательское действие с точкой из множества точек не инициирует предоставления веб-страницей персонализированных подсказок веб-страницы в по меньшей мере одном активируемом пользователем элементе макета.

[019] В некоторых вариантах осуществления способа увеличение заранее заданного интервала времени на каждой итерации инициирования имитируемого пользовательского действия с точкой из множества точек выполняется по экспоненциальному закону.

[020] В некоторых вариантах осуществления способа имитируемое пользовательское действие включает в себя проверку обращения к по меньшей мере одному активируемому пользователем элементу макета.

[021] В некоторых вариантах осуществления способа инициирование имитируемого пользовательского действия выполняется до отображения веб-страницы.

[022] В некоторых вариантах осуществления способа инициирование имитируемого пользовательского действия выполняется во время отображения веб-страницы.

[023] В некоторых вариантах осуществления способа инициирование имитируемого пользовательского действия выполняется в ответ на обновление веб-страницы.

[024] В некоторых вариантах осуществления способа он дополнительно включает в себя запрещение процессором предоставления веб-страницей персонализированных подсказок веб-страницы в по меньшей мере одном активируемом пользователем элементе макета на веб-странице во время ее отображения, если изменение макета указывает на способность веб-страницы предоставлять персонализированные подсказки веб-страницы в этом по меньшей мере одном активируемом пользователем элементе макета.

[025] Согласно второму аспекту настоящей технологии реализован способ управления отображением веб-страницы в браузерном приложении. Способ выполняется процессором электронного устройства, выполняющего браузерное приложение. Браузерное приложение способно предоставлять персонализированные подсказки браузера в по меньшей мере одном активируемом пользователем элементе макета веб-страницы. Способ включает в себя: получение процессором данных, представляющих веб-страницу, подлежащую отображению в браузерном приложении; определение на веб-странице на основе этих данных по меньшей мере одного активируемого пользователем элемента макета, демонстрируемого во время отображения веб-страницы; инициирование процессором имитируемого пользовательского действия с по меньшей мере одним активируемым пользователем элементом макета; определение процессором того, инициирует ли имитируемое пользовательское действие изменение макета в по меньшей мере одном активируемом пользователем элементе макета; запрещение процессором браузерных модификаций, сформированных приложением веб-браузера, в контенте по меньшей мере одного активируемого пользователем элемента макета на веб-странице во время ее отображения, если имитируемое пользовательское действие инициирует изменение макета в по меньшей мере одном активируемом пользователем элементе макета.

[026] В некоторых вариантах осуществления способа изменение макета в по меньшей мере одном активируемом пользователем элементе макета указывает на способность веб-страницы предоставлять пользователю, просматривающему веб-страницу, персонализированные подсказки веб-страницы, сформированные веб-сервером, на котором размещена веб-страница, в по меньшей мере одном активируемом пользователем элементе макета.

[027] В некоторых вариантах осуществления способа браузерные модификации контента по меньшей мере одного активируемого пользователем элемента включают в себя предоставление процессором, обеспечивающим браузерное приложение, в по меньшей мере одном активируемом пользователем элементе макета персонализированных подсказок браузера, сформированных браузерным приложением.

[028] Согласно третьему аспекту настоящей технологии реализован способ управления отображением веб-страницы в браузерном приложении. Способ выполняется процессором электронного устройства, выполняющего браузерное приложение. Браузерное приложение способно предоставлять персонализированные подсказки браузера в по меньшей мере одном активируемом пользователем элементе макета веб-страницы. Способ включает в себя: получение процессором данных, представляющих веб-страницу, подлежащую отображению в браузерном приложении; определение на веб-странице на основе этих данных по меньшей мере одного активируемого пользователем элемента макета, демонстрируемого во время отображения веб-страницы; инициирование процессором имитируемого пользовательского действия с по меньшей мере одним активируемым пользователем элементом макета; определение процессором того, инициирует ли имитируемое пользовательское действие изменение макета, указывающее на способность веб-страницы предоставлять в по меньшей мере одном активируемом пользователем элементе макета персонализированные подсказки веб-страницы, сформированные веб-страницей независимо от браузерного приложения; запрещение процессором одного из следующих заранее заданных действий: предоставление браузерным приложением персонализированных подсказок браузера в по меньшей мере одном активируемом пользователем элементе макета на веб-странице во время ее отображения и предоставление веб-страницей персонализированных подсказок веб-страницы в по меньшей мере одном активируемом пользователем элементе макета на веб-странице во время ее отображения, если изменение макета указывает на способность веб-страницы предоставлять персонализированные подсказки веб-страницы в этом по меньшей мере одном активируемом пользователем элементе макета.

[029] В некоторых вариантах осуществления способа данные, представляющие веб-страницу, содержат исходный код на языке JavaScript и/или на языке CSS.

[030] В некоторых вариантах осуществления способа перед инициированием имитируемого пользовательского действия способ дополнительно включает в себя: получение процессором схемы сканирования для по меньшей мере одного активируемого пользователем элемента макета, содержащей множество точек, представляющих внешний вид по меньшей мере одного активируемого пользователем элемента макета веб-страницы;

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

[032] В некоторых вариантах осуществления способа инициирование имитируемого пользовательского действия с точкой из множества точек выполняется с заранее заданным интервалом времени.

[033] В некоторых вариантах осуществления способа он дополнительно включает в себя увеличение процессором заранее заданного интервала времени, если имитируемое пользовательское действие с точкой из множества точек не инициирует предоставления веб-страницей персонализированных подсказок веб-страницы в по меньшей мере одном активируемом пользователем элементе макета.

[034] В некоторых вариантах осуществления способа увеличение заранее заданного интервала времени на каждой итерации инициирования имитируемого пользовательского действия с точкой из множества точек выполняется по экспоненциальному закону.

[035] В некоторых вариантах осуществления способа имитируемое пользовательское действие включает в себя проверку обращения к по меньшей мере одному активируемому пользователем элементу макета.

[036] Согласно другому аспекту настоящей технологии реализована система для управления отображением веб-страницы в браузерном приложении. Система содержит электронное устройство, выполняющее браузерное приложение, способное предоставлять персонализированные подсказки браузера в по меньшей мере одном активируемом пользователем элементе макета веб-страницы. Электронное устройство содержит процессор и машиночитаемый физический носитель информации, хранящий команды. Процессор при выполнении команд способен: получать данные, представляющие веб-страницу, подлежащую отображению в браузерном приложении; на основе этих данных определять на веб-странице по меньшей мере один активируемый пользователем элемент макета, демонстрируемый во время отображения веб-страницы; инициировать имитируемое пользовательское действие с по меньшей мере одним активируемым пользователем элементом макета; определять, инициирует ли имитируемое пользовательское действие изменение макета, указывающее на способность веб-страницы предоставлять в по меньшей мере одном активируемом пользователем элементе макета персонализированные подсказки веб-страницы, сформированные веб-страницей независимо от браузерного приложения; запрещать предоставление браузерным приложением персонализированных подсказок браузера в по меньшей мере одном активируемом пользователем элементе макета на веб-странице во время ее отображения, если изменение макета указывает на способность веб-страницы предоставлять персонализированные подсказки веб-страницы в этом по меньшей мере одном активируемом пользователем элементе макета.

[037] В некоторых вариантах осуществления системы перед инициированием имитируемого пользовательского действия процессор дополнительно способен: получать схему сканирования для по меньшей мере одного активируемого пользователем элемента макета, содержащую множество точек, представляющих внешний вид по меньшей мере одного активируемого пользователем элемента макета веб-страницы; применять схему сканирования в области по меньшей мере одного активируемого пользователем элемента макета, при этом для инициирования имитируемого пользовательского действия с по меньшей мере одним активируемым пользователем элементом макета процессор способен инициировать имитируемое пользовательское действие с каждой точкой из множества точек.

[038] В некоторых вариантах осуществления системы процессор способен инициировать имитируемое пользовательское действие с точкой из множества точек с использованием заранее заданного интервала времени.

[039] В некоторых вариантах осуществления системы процессор дополнительно способен увеличивать заранее заданный интервал времени, если имитируемое пользовательское действие с точкой из множества точек не инициирует предоставления веб-страницей персонализированных подсказок веб-страницы в по меньшей мере одном активируемом пользователем элементе макета.

[040] В некоторых вариантах осуществления системы процессор способен увеличивать по экспоненциальному закону заранее заданный интервал времени на каждой итерации инициирования имитируемого пользовательского действия с точкой из множества точек.

[041] В некоторых вариантах осуществления системы имитируемое пользовательское действие включает в себя проверку обращения к по меньшей мере одному активируемому пользователем элементу макета.

[042] В контексте настоящего описания термин «сервер» означает компьютерную программу, выполняемую соответствующими аппаратными средствами и способную принимать запросы (например, от электронных устройств) через сеть и выполнять эти запросы или инициировать их выполнение. Аппаратные средства могут быть реализованы в виде одного физического компьютера или одной компьютерной системы, что не существенно для настоящей технологии. В настоящем контексте выражение «сервер» не означает, что каждая задача (например, принятая команда или запрос) или некоторая определенная задача принимается, выполняется или запускается одним и тем же сервером (т.е. одними и теми же программными и/или аппаратными средствами). Это выражение означает, что любое количество программных средств или аппаратных средств может принимать, отправлять, выполнять или запускать выполнение любой задачи или запроса либо результатов любых задач или запросов. Все эти программные и аппаратные средства могут представлять собой один сервер или несколько серверов, причем оба эти случая подразумеваются в выражении «по меньшей мере один сервер».

[043] В контексте настоящего описания термин «электронное устройство» означает любое компьютерное аппаратное средство, способное выполнять программы, подходящие для решения поставленной задачи. В контексте настоящего описания термин «электронное устройство» подразумевает, что устройство может функционировать в качестве сервера для других электронных устройств, тем не менее, это не обязательно для настоящей технологии. Таким образом, некоторые (не имеющие ограничительного характера) примеры электронных устройств включают в себя блок автономного вождения, персональные компьютеры (настольные, ноутбуки, нетбуки и т.п.), смартфоны и планшеты, а также сетевое оборудование, такое как маршрутизаторы, коммутаторы и шлюзы. Должно быть понятно, что в настоящем контексте тот факт, что устройство функционирует в качестве электронного устройства, не означает, что оно не может функционировать в качестве сервера для других электронных устройств.

[044] В контексте настоящего описания выражение «информация» включает в себя информацию любого рода или вида, допускающую хранение в базе данных. Таким образом, информация включает в себя визуальные произведения (например, карты), аудиовизуальные произведения (например, изображения, фильмы, звукозаписи, презентации и т.д.), данные (например, данные о местоположении, метеорологические данные, данные о дорожном движении, числовые данные и т.д.), текст (например, мнения, комментарии, вопросы, сообщения и т.д.), документы, электронные таблицы и т.д., но не ограничивается ими.

[045] В контексте настоящего описания термин «база данных» означает любой структурированный набор данных, независимо от его конкретной структуры, программного обеспечения для управления базой данных или компьютерных аппаратных средств для хранения этих данных, их применения или обеспечения их использования иным способом. База данных может располагаться в тех же аппаратных средствах, где реализован процесс, обеспечивающий хранение или использование информации, хранящейся в базе данных, либо база данных может располагаться в отдельных аппаратных средствах, таких как специализированный сервер или множество серверов.

[046] В контексте настоящего описания числительные «первый» «второй», «третий» и т.д. используются лишь для указания на различие между существительными, к которым они относятся, но не для описания каких-либо определенных взаимосвязей между этими существительными. Кроме того, как встречается в настоящем описании в другом контексте, ссылка на «первый» элемент и «второй» элемент не исключает того, что эти два элемента в действительности могут быть одним и тем же элементом.

[047] Каждый вариант осуществления настоящей технологии относится к по меньшей мере одной из вышеупомянутых целей и/или одному из вышеупомянутых аспектов, но не обязательно ко всем ним. Должно быть понятно, что некоторые аспекты настоящей технологии, связанные с попыткой достижения вышеупомянутой цели, могут не соответствовать этой цели и/или могут соответствовать другим целям, явным образом здесь не упомянутым.

[048] Дополнительные и/или альтернативные признаки, аспекты и преимущества вариантов осуществления настоящей технологии содержатся в дальнейшем описании, на приложенных чертежах и в формуле изобретения.

Краткое описание чертежей

[049] Эти и другие признаки, аспекты и преимущества настоящей технологии поясняются в дальнейшем описании, в приложенной формуле изобретения и на следующих чертежах.

[050] На фиг. 1 представлена схема примера компьютерной системы, которая может быть использована для осуществления некоторых не имеющих ограничительного характера вариантов настоящей технологии.

[051] На фиг. 2 приведена схема сетевой вычислительной среды, содержащей компьютерную систему, представленную на фиг. 1, и пригодной для использования с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии.

[052] На фиг. 3 приведено схематическое изображение графического интерфейса пользователя (GUI, Graphical User Interface) браузерного приложения, выполняемого в электронном устройстве из сетевой вычислительной среды, представленной на фиг. 2, и обеспечивающего визуальное представление веб-страницы, согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии.

[053] На фиг. 4 и 5 приведены схематические изображения для различных подходов к предоставлению персонализированных подсказок в конкретных элементах макета веб-страницы, представленной на фиг. 3, согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии.

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

[055] На фиг. 7 схематически представлен подход к сканированию элемента макета веб-страницы, представленной на фиг. 3, с целью определения процессором электронного устройства из сетевой вычислительной среды, представленной на фиг. 2, способности веб-страницы предоставлять свои персонализированные подсказки независимо от браузерного приложения, согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии.

[056] На фиг. 8 приведена блок-схема способа управления со стороны процессора электронного устройства из сетевой вычислительной среды, представленной на фиг. 2, отображением веб-страницы, представленной на фиг. 3, согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии.

Осуществление изобретения

[057] Представленные здесь примеры и условный язык предназначены для обеспечения лучшего понимания принципов настоящей технологии, а не для ограничения ее объема до таких специально приведенных примеров и условий. Очевидно, что специалисты в данной области техники способны разработать различные способы и устройства, которые явно не описаны и не показаны, но реализуют принципы настоящей технологии в пределах ее существа и объема.

[058] Кроме того, чтобы способствовать лучшему пониманию, последующее описание может содержать упрощенные варианты реализации настоящей технологии. Специалистам в данной области должно быть понятно, что другие варианты осуществления настоящей технологии могут быть значительно сложнее.

[059] В некоторых случаях приводятся полезные примеры модификаций настоящей технологии. Они способствуют пониманию, но также не определяют объема или границ настоящей технологии. Представленный перечень модификаций не является исчерпывающим и специалист в данной области может разработать другие модификации в пределах объема настоящей технологии. Кроме того, если в некоторых случаях модификации не описаны, это не означает, что они невозможны и/или что описание содержит единственно возможный вариант реализации того или иного элемента настоящей технологии.

[060] Более того, описание принципов, аспектов и вариантов реализации настоящей технологии, а также их конкретные примеры, предназначены для охвата их структурных и функциональных эквивалентов, независимо от того, известны они в настоящее время или будут разработаны в будущем. Например, специалистам в данной области техники должно быть понятно, что любые описанные здесь структурные схемы соответствуют концептуальным представлениям иллюстративных принципиальных схем, реализующих основы настоящей технологии. Также должно быть понятно, что любые блок-схемы, схемы процессов, диаграммы изменения состояния, псевдокоды и т.п. соответствуют различным процессам, которые могут быть представлены на машиночитаемом физическом носителе информации и могут выполняться компьютером или процессором, независимо от того, показан такой компьютер или процессор явно или нет.

[061] Функции различных элементов, показанных на чертежах, включая любой функциональный блок, обозначенный как «процессор», могут быть реализованы с использованием специализированных аппаратных средств, а также аппаратных средств, способных выполнять соответствующее программное обеспечение. Если используется процессор, эти функции могут выполняться одним выделенным процессором, одним совместно используемым процессором или множеством отдельных процессоров, некоторые из которых могут использоваться совместно. Кроме того, явное использование термина «процессор» или «контроллер» не должно трактоваться как указание исключительно на аппаратные средства, способные выполнять программное обеспечение, и может подразумевать, помимо прочего, аппаратные средства цифрового сигнального процессора (DSP), сетевой процессор, специализированную интегральную схему (ASIC), программируемую вентильную матрицу (FPGA), постоянное запоминающее устройство (ПЗУ) для хранения программного обеспечения, оперативное запоминающее устройство (ОЗУ) и энергонезависимое запоминающее устройство. Также могут подразумеваться и другие аппаратные средства, общего назначения и/или заказные.

[062] Программные модули или просто модули, реализация которых предполагается в виде программных средств, могут быть представлены здесь как любое сочетание элементов блок-схемы или других элементов, указывающих на выполнение шагов процесса и/или содержащих текстовое описание. Такие модули могут выполняться аппаратными средствами, показанными явно или подразумеваемыми.

[063] Далее с учетом вышеизложенных принципов рассмотрены некоторые не имеющие ограничительного характера примеры, иллюстрирующие различные варианты реализации аспектов настоящей технологии.

Компьютерная система

[064] На фиг. 1 представлена компьютерная система 100, пригодная для использования в некоторых вариантах осуществления настоящей технологии. Компьютерная система 100 содержит различные аппаратные элементы, включая один или несколько одно- или многоядерных процессоров, обобщенно представленных процессором 110, графический процессор 111 (GPU), твердотельный накопитель 120, ОЗУ 130, интерфейс 140 дисплея и интерфейс 150 ввода-вывода.

[065] Связь между элементами компьютерной системы 100 может осуществляться через одну или несколько внутренних и/или внешних шин 160 (таких как шина PCI, шина USB, шина FireWire стандарта IEEE 1394, шина SCSI, шина Serial-ATA и т.д.), с которыми различные аппаратные элементы соединены электронными средствами.

[066] Интерфейс 150 ввода-вывода может соединяться с сенсорным экраном 190 и/или с одной или несколькими внутренними и/или внешними шинами 160. Сенсорный экран 190 может также называться экраном (например, экран (отдельно не обозначен) электронного устройства 210, представленного на фиг. 2). В представленных на фиг. 1 вариантах осуществления изобретения сенсорный экран 190 содержит сенсорные аппаратные средства 194 (например, чувствительные к нажатию ячейки, встроенные в слой дисплея и позволяющие обнаруживать физическое взаимодействие между пользователем и дисплеем) и контроллер 192 сенсорных средств ввода-вывода, который обеспечивает связь с интерфейсом 140 дисплея и/или с одной или несколькими внутренними и/или внешними шинами 160. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии интерфейс 150 ввода-вывода может быть соединен с клавиатурой (отдельно не показана), мышью (отдельно не показана) или сенсорной площадкой (отдельно не показана), которые обеспечивают взаимодействие пользователя с компьютерной системой 100 в дополнение к сенсорному экрану 190 или вместо него.

[067] Следует отметить, что в некоторых не имеющих ограничительного характера вариантах осуществления изобретения некоторые элементы компьютерной системы 100 могут отсутствовать. Например, клавиатура и мышь (отдельно не показаны) могут отсутствовать, в частности, если компьютерная система 100 реализована в виде малогабаритного электронного устройства, такого как смартфон (не ограничиваясь этим).

[068] Согласно вариантам осуществления настоящей технологии, твердотельный накопитель 120 хранит программные команды, пригодные для загрузки в ОЗУ 130 и выполнения процессором 110 и/или графическим процессором 111. Программные команды могут, например, входить в состав библиотеки или приложения.

Сетевая вычислительная среда

[069] На фиг. 2 представлена сетевая вычислительная среда 200 (на чертежах не показано), пригодная для использования в некоторых вариантах осуществления настоящей технологии, не имеющих ограничительного характера. Сетевая вычислительная среда 200 содержит электронное устройство 210, соединенное через сеть 240 связи с сервером 250. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии электронное устройство 210 может быть связано с пользователем 230.

[070] В не имеющих ограничительного характера вариантах осуществления настоящей технологии электронное устройство 210 может представлять собой любые компьютерные аппаратные средства, способные выполнять программы, подходящие для решения поставленной задачи. Таким образом, в качестве некоторых не имеющих ограничительного характера примеров электронного устройства 210 можно привести персональные компьютеры (настольные, ноутбуки, нетбуки и т.п.), смартфоны и планшеты. Электронное устройство 210 может содержать некоторые или все элементы компьютерной системы 100, представленной на фиг. 1.

[071] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии сервер 250 может быть реализован в виде традиционного компьютерного сервера и может содержать некоторые или все элементы компьютерной системы 100, представленной на фиг. 1. В одном не имеющем ограничительного характера примере сервер 250 реализован в виде сервера Dell™ PowerEdge™, работающего под управлением операционной системы Microsoft™ Windows Server™, но он также может быть реализован с использованием любых других подходящих аппаратных средств, прикладного программного обеспечения и/или встроенного программного обеспечения либо их сочетания. В представленных не имеющих ограничительного характера вариантах осуществления настоящей технологии сервер 250 представляет собой один сервер. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии (не показаны) функции сервера 250 могут быть распределены между несколькими серверами.

[072] Согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии, сервер 250 может содержать веб-ресурс 255. В общем случае веб-ресурс 255 может содержать и таким образом обеспечивать доступ к информации различных видов, такой как тексты, изображения, аудиоматериалы и видеоматериалы, размещенные на по меньшей мере одной веб-странице (такой как веб-страница 302, представленная на фиг. 3), которая может быть идентифицирована в сети 240 связи, например, с использованием универсального указателя ресурсов (URL, Universal Resource Locator), связанного с по меньшей мере одной страницей. В качестве примеров веб-ресурса 255 можно привести веб-сайт, такой как коммерческий веб-сайт, предназначенный для рекламы конкретных товаров, социальную сеть (такую как Facebook.com™), онлайн-видеосервис (например, Kinopoisk.ru™) и т.д.

[073] Таким образом, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии пользователь 230 с использованием электронного устройства 210 может запросить доступ к веб-странице 302, например, путем отправки URL-адреса в адресной строке (не показана на фиг. 2) браузерного приложения 215 (не показано на чертежах), выполняемого в электронном устройстве 210. В другом примере пользователь 230 может быть перенаправлен на веб-страницу 302 с другой веб-страницы, содержащей ссылку на веб-страницу 302, выбранную пользователем 230. В ответ сервер 250 может предоставлять электронному устройству 210 доступ к веб-странице 302 веб-ресурса 255 путем отправки представляющего ее цифрового документа электронному устройству 210 для демонстрации пользователю 230.

[074] В контексте настоящего описания браузерное приложение 215 может представлять собой программное приложение, выполняемое в электронном устройстве, таком как электронное устройство 210, и способное обеспечивать доступ к ресурсам узлов сети, например, сети 240 связи, в ответ на получение их адресов в этой сети. В конкретном не имеющем ограничительного характера примере браузерное приложение 215 может быть реализовано в виде браузерного приложения Yandex.Browser™, предоставляемого компанией ООО «Яндекс», ул. Льва Толстого, 16, Москва, 119021, Россия.

[075] Кроме того, цифровой документ, представляющий веб-страницу 302, может содержать исполняемый исходный код, например, разработанный на языке HTML. Тем не менее, в других не имеющих ограничительного характера вариантах осуществления настоящей технологии по меньшей мере часть исполняемого исходного кода может быть разработана на другом языке программирования, например, на языке программирования JavaScript и/или CSS.

[076] После получения этого цифрового документа возможно инициирование выполнения браузерным приложением 215 электронного устройства 210 исполняемого исходного кода, связанного с веб-страницей 302, и таким образом формирование, например, блоком визуализации браузерного приложения 215, ее визуального представления для демонстрации пользователю 230.

[077] На фиг. 3 представлен интерфейс GUI браузерного приложения 215, обеспечивающий визуальное представление веб-страницы 302, согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии.

[078] Как показано на фиг. 3, согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии, веб-страница 302 может содержать множество элементов макета, определяющих ее визуальное представление. Например, некоторые элементы из множества элементов макета могут быть статическими, т.е. неспособными реагировать на пользовательские действия с ними. Такие элементы макета называются здесь неактивируемыми пользователем элементами макета. В качестве примера можно привести неактивируемый пользователем элемент 304 макета, содержащий заголовок «Contact Information» («Контактная информация»), который, как предполагается, после отображения блоком визуализации браузерного приложения 215 не реагирует на пользовательские действия пользователя 230 в отношении него.

[079] Согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии, визуальное представление веб-страницы 302 также может содержать элементы макета, с которыми пользователь 230 может взаимодействовать. Такие элементы макета называются здесь активируемыми пользователем элементами макета и могут включать в себя элементы макета, способные получать вводимую пользователем информацию, такую как «клики», текстовые данные, вводимые пользователем 230, и т.п. Например, как показано на фиг. 3, активируемый пользователем элемент 306 макета может содержать поле ввода для получения текстовой информации, представляющей адрес, который должен предоставить пользователь 230. На другие примеры активируемых пользователем элементов макета не накладывается каких-либо ограничений. В зависимости от содержания соответствующей веб-страницы они могут включать в себя флажки, радиокнопки, раскрывающиеся меню и другие интерактивные веб-элементы, внешний вид которых может изменяться в ответ на действия пользователя 230.

[080] Согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии, активируемый пользователем элемент 306 макета веб-страницы 302 может выводить персонализированные подсказки в ответ на конкретные пользовательские действия. В данном контексте персонализированная подсказка представляет собой прогнозируемое автоматическое завершение пользовательского действия с активируемым пользователем элементом 306 макета.

[081] На фиг. 4 и 5 приведены схематические представления подхода к предоставлению персонализированных подсказок 404 для активируемого пользователем элемента 306 макета в ответ на пользовательские действия 402 с ним, согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии. Предполагается, что пользовательские действия 402 могут, например, соответствовать частично введенной текстовой информации, представляющей адрес. Тем не менее, пользовательские действия 402 с активируемым пользователем элементом 306 макета также могут включать в себя «клик», например, размещение курсора в активируемом пользователем элементе 306 макета или наведение указателя (например, указателя мыши) на активируемый пользователем элемент 306 макета и т.п.

[082] В одном примере, представленном на фиг. 4, в ответ на пользовательские действия 402 персонализированные подсказки 404, выводимые в активируемом пользователем элементе 306 макета, могут содержать автоматическое заполнение частично введенных пользователем 230 данных. В ответ на предоставленные персонализированные подсказки 404 пользователь 230 может (а) подтвердить персонализированные подсказки 404, например, путем предоставления заранее заданной подтверждающей входной информации (такой как «клик» на подсказке), или (б) отклонить персонализированные подсказки 404, например, путем продолжения ввода адреса с клавиатуры.

[083] В другом примере персонализированные подсказки 404, выводимые в активируемом пользователем элементе 306 макета, могут содержать множество вариантов автоматического завершения, соответствующих пользовательским действиям 402 и размещенных, например, в раскрывающемся меню, как показано на фиг. 5, согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии. В этом примере пользователь 230 может (а) выбрать один из предоставленных вариантов автозавершения из числа персонализированных подсказок 404, например, с помощью «клика» на нем, или (б) отклонить все персонализированные подсказки 404, например, путем продолжения ввода адреса с клавиатуры.

[084] Согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии, персонализированные подсказки 404 могут быть сформированы и предоставлены браузерным приложением 215. В этом случае персонализированные подсказки 404 называются здесь персонализированными подсказками браузера. В частности, процессор 110 электронного устройства 210 может инициировать выполнение браузерным приложением 215 следующих действий: (а) сохранение, например, на твердотельном накопителе 120 электронного устройства 210 или в «облачном» хранилище информации, указывающей на пользовательские входные данные, предоставленные пользователем 230 в активируемых пользователем элементах макета различных веб-страниц; (б) определение вида активируемого пользователем элемента макета в ответ на пользовательские действия 402; (в) основанное на прошлых пользовательских действиях с подобными активируемыми пользователем элементами макета формирование и предоставление персонализированных подсказок браузера для завершения пользовательских действий 402.

[085] На способ определения браузерным приложением 215 вида активируемого пользователем элемента 306 не накладывается каких-либо ограничений. Например, он может включать в себя парсинг исполняемого исходного кода веб-страницы 302 с целью определения (1) частей исполняемого исходного кода веб-страницы 302, соответствующих активируемому пользователем элементу 306 макета; (2) содержания веб-страницы 302; (3) других элементов макета, соседних с активируемым пользователем элементом 306 макета, например, представляющих заголовок «Address» («Адрес»); (4) размеров и/или формы активируемого пользователем элемента 306 макета.

[086] В других не имеющих ограничительного характера вариантах осуществления настоящей технологии персонализированные подсказки 404 могут быть сформированы и предоставлены веб-страницей 302. В этом случае персонализированные подсказки 404 называются здесь персонализированными подсказками веб-страницы. Например, сервер 250, на котором размещен веб-ресурс 255, содержащий веб-страницу 302, может (а) определять текущее местоположение пользователя 230, например, с помощью IP-адреса, связанного с электронным устройством 210, или на основе данных из его модуля GPS; (б) определять вид активируемого пользователем элемента 306 макета, как описано выше; (в) в ответ на получение данных, указывающих на пользовательские действия 402, формировать персонализированные подсказки веб-страницы, завершающие пользовательские действия 402, для их вывода в активируемом пользователем элементе 306 макета.

[087] Предполагается, что браузерное приложение 215 и веб-страница 302 могут независимо предоставлять персонализированные подсказки браузера и персонализированные подсказки веб-страницы, соответственно, что может негативно влиять на восприятие пользователя 230, взаимодействующего с веб-страницей 302. Например, как схематически показано на фиг. 6, без использования преимуществ не имеющих ограничительного характера вариантов осуществления настоящей технологии персонализированные подсказки браузера и персонализированные подсказки веб-страницы могут одновременно выводиться в активируемом пользователем элементе 306 макета и таким образом накладываться в нем друг на друга, что может негативно влиять на их распознаваемость.

[088] Разработчики настоящей технологии разработали способы назначения приоритетов персонализированным подсказкам браузера и персонализированным подсказкам веб-страницы друг относительно друга. В частности, описанные здесь способы и системы предназначены для (а) выполняемого до получения пользовательских действий 402 определения процессором 110 электронного устройства 210 способности веб-страницы 302 предоставлять персонализированные подсказки веб-страницы в активируемом пользователем элементе 306 макета во время ее отображения браузерным приложением 215 и (б) запрещения процессором 110 предоставления браузерным приложением 215 персонализированных подсказок браузера в активируемом пользователем элементе 306 макета, если определено, что веб-страница способна предоставлять персонализированные подсказки веб-страницы в активируемом пользователем элементе 306 макета. Таким образом, описанные здесь способы и системы предназначены для устранения конфликтов между персонализированными подсказками, которые должны выводиться в одном элементе макета.

[089] Определение процессором 110 способности веб-страницы 302 предоставлять персонализированные подсказки веб-страницы согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии описано ниже со ссылкой на фиг. 7 и 8.

Сеть связи

[090] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии сеть 240 связи представляет собой сеть Интернет. В альтернативных не имеющих ограничительного характера вариантах осуществления настоящей технологии сеть 240 связи может быть реализована в виде любой подходящей локальной сети (LAN, Local Area Network), глобальной сети (WAN, Wide Area Network), частной сети связи и т.п. Очевидно, что варианты осуществления сети связи приведены лишь в иллюстративных целях. Реализация соответствующих линий связи (отдельно не обозначены) между электронным устройством 210 и сервером 250 с одной стороны и сетью 240 связи с другой стороны зависит, среди прочего, от реализации электронного устройства 210 и сервера 250. Лишь в качестве примера, не имеющего ограничительного характера, в тех вариантах осуществления настоящей технологии, где электронное устройство 210 реализовано в виде устройства беспроводной связи, такого как смартфон, линия связи может быть реализована в виде беспроводной линии связи. Примеры беспроводных линий связи включают в себя канал сети связи 3G, канал сети связи 4G и т.д. В сети 240 связи также может использоваться беспроводное соединение с сервером 250 и с электронным устройством 210.

Обнаружение подсказок веб-страницы

[091] Согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии, для определения способности веб-страницы 302 предоставлять персонализированные подсказки веб-страницы независимо от браузерного приложения 215 процессор 110 может формировать имитируемое пользовательское действие с активируемым пользователем элементом 306 макета. Затем в ответ на изменение макета активируемого пользователем элемента 306 макета процессор 110 может определять, что веб-страница 302 способна предоставлять персонализированные подсказки веб-страницы.

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

[093] Следует отметить, что в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может определять, что веб-страница 302 способна предоставлять персонализированные подсказки веб-страницы, если в ответ на имитируемое пользовательское действие с активируемым пользователем элементом 306 макета макет изменяется в каком-либо элементе макета, представленном на веб-странице 302.

[094] В контексте настоящего описания имитируемое пользовательское действие соответствует действию, которое имитирует пользовательское действие, но не инициировано пользователем-человеком, таким как пользователь 230, и формируется автоматически, например, путем выполнения процессором 110 соответствующих программных команд. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии имитируемое пользовательское действие может представлять собой имитируемый пользовательский «клик» на активируемом пользователем элементе 306 макета. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии имитируемое пользовательское действие может представлять собой имитируемый ввод символов. В иных не имеющих ограничительного характера вариантах осуществления настоящей технологии имитируемое пользовательское действие может представлять собой имитируемый «клик» и последующий имитируемый ввод символов.

[095] В конкретном не имеющем ограничительного характера примере имитируемое пользовательское действие с активируемым пользователем элементом 306 макета может включать в себя выполняемую процессором 110 проверку обращения к активируемому пользователем элементу 306 макета.

[096] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может формировать и применять имитируемое пользовательское действие в отношении активируемого пользователем элемента 306 макета до инициирования отображения веб-страницы 302. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может формировать и применять имитируемое пользовательское действие в отношении активируемого пользователем элемента 306 макета после инициирования отображения веб-страницы 302, например, в течение заранее заданного интервала времени после загрузки и отображения веб-страницы 302 браузерным приложением 215 (например, в течение 0,3-0,5 с). В других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может формировать и применять имитируемое пользовательское действие в отношении активируемого пользователем элемента 306 макета после инициирования отображения веб-страницы 302 в определенные моменты времени, например, регулярно с заранее заданным периодом, таким как 5 или 10 секунд.

[097] В других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может инициировать имитируемое пользовательское действие с активируемым пользователем элементом 306 макета в ответ на заранее заданное действие пользователя 230. В одном примере такое заранее заданное действие пользователя может включать в себя обновление веб-страницы 302. В другом примере заранее заданное действие пользователя может включать в себя прокрутку заранее заданной части веб-страницы 302, например, составляющей 60%. Другие действия пользователя в отношении веб-страницы 302, запускающие инициирование процессором 110 имитируемых пользовательских действий с активируемым пользователем элементом 306 макета, также возможны без выхода за границы настоящей технологии.

[098] Согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии, для определения способности веб-страницы 302 предоставлять персонализированные подсказки веб-страницы в активируемом пользователем элементе макета процессор 110 может инициировать имитируемое пользовательское действие с конкретными точками визуального представления активируемого пользователем элемента 306 макета. В частности, процессор 110 может «сканировать» визуальное представление активируемого пользователем элемента 306 макета в его конкретных точках, чтобы определять наличие изменения макета активируемого пользователем элемента 306 макета, указывающего на способность веб-страницы 302 предоставлять персонализированные подсказки веб-страницы.

[099] Следует отметить, что некоторые не имеющие ограничительного характера варианты осуществления настоящей технологии основаны на предположении, что блок визуализации браузерного приложения 215 может распознавать, что ответ на имитируемое пользовательское действие сформирован веб-страницей 302, а не браузерным приложением 215. В частности, согласно не имеющим ограничительного характера вариантам осуществления настоящей технологии, блок визуализации может быть реализован так, чтобы он не являлся частью интерфейса GUI браузерного приложения 215 и таким образом не получал изменений, инициированных браузерным приложением 215. Таким образом, любые изменения макета, доступные блоку визуализации, оказываются обусловленными веб-страницей 302, а не браузерным приложением 215.

[0100] Согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии, блок визуализации может определять, что изменение макета (такое как соответствующее изменение макета, схематически представленное на фиг. 7), инициированное путем применения имитируемого пользовательского действия в отношении активируемого пользователем элемента 306 макета, инициировано веб-страницей 302, а не браузерным приложением 215. Таким образом, процессор 110 может определять, что изменение 704 макета указывает на персонализированные подсказки веб-страницы, а не на персонализированные подсказки браузера.

[0101] Например, процессор 110 может инициировать имитируемое пользовательское действие с активируемым пользователем элементом 306 макета согласно связанной с ним заранее заданной схеме. На фиг. 7 приведено схематическое изображение схемы 702 сканирования, применяемой в отношении визуального представления активируемого пользователем элемента 306 макета для инициирования имитируемого пользовательского действия с ним, согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии.

[0102] Предполагается, что схема 702 сканирования содержит множество точек, каждая из которых может включать в себя набор значений координат, таких как декартовы координаты, в системе координат, связанной с веб-страницей 302. Таким образом, процессор 110 может: (а) с использованием значений координат определять каждую точку из множества точек на веб-странице 302 и (б) инициировать имитируемое пользовательское действие с ней, чтобы определить, происходит ли в ответ какое-либо изменение макета, такое как изменение 704 макета.

[0103] В представленных вариантах осуществления изобретения изменение 704 макета представляет собой дополнительный элемент макета, задающий область для раскрывающегося меню. Тем не менее, должно быть понятно, что также возможны и другие изменения макета, связанные с активируемым пользователем элементом 306, такие как вывод в нем текста. Также следует отметить, что конкретный вариант реализации изменения 704 макета в общем случае зависит от реализации активируемого пользователем элемента 306 макета. Например, в тех вариантах реализации настоящей технологии, где активируемый пользователем элемент 306 макета представляет собой радиокнопку или флажок и, следовательно, имитируемое пользовательское действие с ним представляет собой «клик» на нем, изменение 704 макета может включать в себя автоматическое изменение других радиокнопок или флажков (не показаны) на веб-странице 302, отображение ввода дополнительных полей ввода и т.п.

[0104] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии схема 702 сканирования может быть заранее связана с активируемым пользователем элементом 306 макета в памяти электронного устройства 210, например, на твердотельном накопителе 120, и процессор 110 перед инициированием имитируемого пользовательского действия может: (а) выполнять парсинг исполняемого исходного кода веб-страницы 302; (б) определять в исполняемом исходном коде активируемый пользователем элемент 306 макета; (в) получать схему 702 сканирования для ее применения в отношении визуального представления активируемого пользователем элемента 306 макета.

[0105] В других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может определять схему 702 сканирования. В частности, определив активируемый пользователем элемент 306 макета, процессор 110 может определять его параметры, такие как его размеры и геометрическая форма, и на основе этих параметров определять вид схемы 702 сканирования и количество точек, которые должны быть просканированы в ней. Например, процессор 110 может определять схему 702 сканирования в виде множества точек, задающих отрезок прямой линии, расположенный вдоль одной из сторон активируемого пользователем элемента 306 макета, как показано на фиг. 7. В другом примере (не показан) процессор 110 может определять схему 702 сканирования в виде множества точек, расположенных по контуру активируемого пользователем элемента 306 макета. В еще одном примере (также не показан) процессор 110 может определять схему 702 сканирования в виде множества точек, распределенных, например, равномерно, в области визуального представления активируемого пользователем элемента 306 макета. При этом на распределение множества точек в области визуального представления активируемого пользователем элемента 306 макета не накладывается каких-либо ограничений. Например, оно может соответствовать нормальному распределению вероятностей наведения указателя на активируемый пользователем элемент 306 макета.

[0106] Кроме того, предполагается, что значение плотности множества точек, задающих схему 702 сканирования, указывает на частоту сканирования активируемого пользователем элемента 306 процессором 110. Значение плотности множества точек может быть заранее задано на основе компромисса между точностью сканирования активируемого пользователем элемента 306 и требуемыми вычислительными ресурсами процессора 110.

[0107] Должно быть понятно, что схема 702 сканирования показана на фиг. 7 как наложенная на визуальное представление активируемого пользователем элемента 306 исключительно в иллюстративных целях. Согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии, схема 702 сканирования может быть скрыта при фактическом отображении веб-страницы 302.

[0108] Как описано выше, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может регулярно сканировать активируемый пользователем элемент 306 макета с заранее заданным периодом. В частности, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может сканировать каждую точку из множества точек, задающих схему 702 сканирования, с одним и тем же периодом, т.е. с заранее заданным периодом. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может сканировать каждую точку из множества точек по-разному. Например, процессор 110 может увеличивать период сканирования для тех точек, которые не инициируют изменения 704 макета в ответ на имитируемое пользовательское действие с ним. В конкретном не имеющем ограничительного характера примере процессор 110 может увеличивать период сканирования по экспоненциальному закону. При этом следует отметить, что другие функции, такие как степенная функция или логарифмическая функция, а также их различные параметры, также могут использоваться для определения увеличенного периода сканирования точек. Это позволяет экономить вычислительные ресурсы процессора 110 при сканировании тех точек схемы 702 сканирования, которые не реагируют на имитируемое пользовательское действие с ними. Также следует отметить, что процессор 110 может восстанавливать исходное значение периода сканирования каждой точки из множества точек в ответ на заранее заданное действие пользователя, например, такое как обновление веб-страницы 302.

[0109] Таким образом, согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии, процессор 110 может инициировать имитируемое пользовательское действие с каждой точкой из множества точек схемы 702 сканирования, чтобы определять наличие ответного изменения 704 макета. Кроме того, путем определения того, что имитируемое пользовательское действие с какой-либо точкой из множества точек инициирует изменение 704 макета, процессор 110 может определять, что веб-страница 302 способна предоставлять персонализированные подсказки веб-страницы. В связи с этим, согласно не имеющим ограничительного характера вариантам осуществления настоящей технологии, процессор 110 может запрещать предоставление браузерным приложением 215 персонализированных подсказок браузера в активируемом пользователем элементе 306 макета. Таким образом процессор 110 способен предотвращать наложение персонализированных подсказок браузера и персонализированных подсказок веб-страницы, в результате чего предполагается улучшение восприятия пользователем взаимодействия с браузерным приложением 215 и веб-страницей 302.

[0110] Должно быть понятно, что обеспечение преимущества персонализированных подсказок веб-страницы перед персонализированными подсказками браузера описано выше лишь для объяснения вариантов осуществления настоящей технологии, не имеющих ограничительного характера. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии, если определено, что имитируемое пользовательское действие с какой-либо точкой из множества точек, задающих схему 702 сканирования, инициирует изменения 704 макета, то процессор 110 может запрещать серверу 250 предоставлять персонализированные подсказки веб-страницы для вывода их в активируемом пользователем элементе 306 макета.

Способ

[0111] Описанные выше архитектура и примеры позволяют выполнять способ управления отображением веб-страницы, такой как веб-страница 302, как описано выше. На фиг. 8 представлена блок-схема способа 800 согласно не имеющим ограничительного характера вариантам осуществления настоящей технологии. Способ 800 может выполняться процессором 110 электронного устройства 210. Как описано выше, электронное устройство 210 может выполнять браузерное приложение 215, с использованием которого процессор 110 может выполнять способ 800.

Шаг 802: получение процессором данных, представляющих веб-страницу, подлежащую отображению в браузерном приложении.

[0112] Способ 800 начинается с шага 802, на котором процессор 110 способен получать данные, представляющие веб-страницу 302, для ее отображения в браузерном приложении 215. Как описано выше со ссылкой на фиг. 2 и 3, такие данные могут содержать цифровой документ, содержащий исполняемый исходный код веб-страницы 302, например, разработанный на языке HTML. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии по меньшей мере часть исполняемого исходного кода может быть разработана на другом языке программирования, например, на языке программирования JavaScript и/или CSS.

[0113] Таким образом, путем выполнения исполняемого исходного кода веб-страницы 302 процессор 110 может отображать, например, с использованием блока визуализации браузерного приложения 215, визуальное представление веб-страницы 302 в браузерном приложении 215, например, как схематически показано на фиг. 3.

[0114] Далее способ 800 продолжается на шаге 804.

Шаг 804: определение на веб-странице на основе полученных данных по меньшей мере одного активируемого пользователем элемента макета, демонстрируемого во время отображения веб-страницы.

[0115] На шаге 804 процессор 110 может определять, например, путем парсинга исполняемого исходного кода веб-страницы 302, присутствующий на ней активируемый пользователем элемент макета, такой как описанный выше активируемый пользователем элемент 306 макета.

[0116] Далее способ 800 продолжается на шаге 806.

Шаг 806: инициирование процессором имитируемого пользовательского действия с по меньшей мере одним активируемым пользователем элементом макета.

[0117] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии на шаге 806 процессор 110 может инициировать имитируемое пользовательское действие с активируемым пользователем элементом 306 макета, чтобы определить наличие какого-либо ответного изменения макета, такого как изменение 704 макета, описанное выше со ссылкой на фиг. 7.

[0118] Как описано выше, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии имитируемое пользовательское действие может представлять собой имитируемый пользовательский «клик» на активируемом пользователем элементе 306 макета. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии имитируемое пользовательское действие может представлять собой имитируемый ввод символов. В иных не имеющих ограничительного характера вариантах осуществления настоящей технологии имитируемое пользовательское действие может представлять собой имитируемый «клик» и последующий имитируемый ввод символов.

[0119] В конкретном не имеющем ограничительного характера примере имитируемое пользовательское действие с активируемым пользователем элементом 306 макета может включать в себя выполняемую процессором 110 проверку обращения к активируемому пользователем элементу 306 макета.

[0120] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может формировать и применять имитируемое пользовательское действие в отношении активируемого пользователем элемента 306 макета до инициирования отображения веб-страницы 302. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может формировать и применять имитируемое пользовательское действие в отношении активируемого пользователем элемента 306 макета после инициирования отображения веб-страницы 302, например, в течение заранее заданного интервала времени после загрузки и отображения веб-страницы 302 браузерным приложением 215 (например, в течение 0,3-0,5 с). В других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может формировать и применять имитируемое пользовательское действие в отношении активируемого пользователем элемента 306 макета после инициирования отображения веб-страницы 302 в определенные моменты времени, например, регулярно с заранее заданным периодом, таким как 5 или 10 секунд.

[0121] В других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может инициировать имитируемое пользовательское действие с активируемым пользователем элементом 306 макета в ответ на заранее заданное действие пользователя 230. В одном примере такое заранее заданное действие пользователя может включать в себя обновление веб-страницы 302. В другом примере заранее заданное действие пользователя может включать в себя прокрутку заранее заданной части веб-страницы 302, например, составляющей 60%. Другие действия пользователя в отношении веб-страницы 302, запускающие инициирование процессором 110 имитируемых пользовательских действий с активируемым пользователем элементом 306 макета, также возможны без выхода за границы настоящей технологии.

[0122] Кроме того, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии перед инициированием имитируемого пользовательского действия с активируемым пользователем элементом 306 макета процессор 110 может получать или определять иным образом соответствующую схему, связанную с активируемым пользователем элементом 306 макета, такую как схема 702 сканирования, представленная на фиг. 7. Затем процессор 110 может применять схему 702 сканирования в отношении визуального представления активируемого пользователем элемента 306 макета для инициирования имитируемого пользовательского действия согласно схеме 702 сканирования.

[0123] Схема 702 сканирования содержит множество точек, каждая из которых может включать в себя соответствующий набор значений координат, таких как декартовы координаты, в системе координат, связанной с веб-страницей 302. Таким образом, процессор 110 может: (а) с использованием значений координат определять каждую точку из множества точек на веб-странице 302 и (б) инициировать имитируемое пользовательское действие с ними, чтобы определить, происходит ли в ответ какое-либо изменение макета.

[0124] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может регулярно сканировать активируемый пользователем элемент 306 макета с заранее заданным периодом. В частности, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может сканировать каждую точку из множества точек, задающих схему 702 сканирования, с одним и тем же периодом, т.е. с заранее заданным периодом. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может сканировать каждую точку из множества точек по-разному. Например, процессор 110 может увеличивать период сканирования для тех точек, которые не инициируют изменения 704 макета в ответ на имитируемое пользовательское действие с ним. В конкретном не имеющем ограничительного характера примере процессор 110 может увеличивать период сканирования по экспоненциальному закону. Тем не менее, следует отметить, что другие функции, такие как степенная функция или логарифмическая функция, а также их различные параметры, также могут использоваться для определения увеличенного периода сканирования точек. Это позволяет экономить вычислительные ресурсы процессора 110 при сканировании тех точек схемы 702 сканирования, которые не реагируют на имитируемое пользовательское действие с ними. Также следует отметить, что процессор 110 может восстанавливать исходное значение периода сканирования каждой точки из множества точек в ответ на заранее заданное действие пользователя, например, на обновление веб-страницы 302.

[0125] Далее способ 800 переходит к шагу 808.

Шаг 808: определение процессором того, инициирует ли имитируемое пользовательское действие изменение макета, указывающее на способность веб-страницы предоставлять в по меньшей мере одном активируемом пользователем элементе макета персонализированные подсказки веб-страницы.

[0126] На шаге 808 процессор 110 может определять, инициирует ли имитируемое пользовательское действие с какой-либо точкой из множества точек, задающих схему 702 сканирования, которое было применено в отношении активируемого пользователем элемента 306 макета, изменение 704 макета.

[0127] Как описано выше со ссылкой на фиг. 7, изменение 704 макета может, например, представлять собой дополнительный элемент макета, задающий область для раскрывающегося меню. Тем не менее, должно быть понятно, что также возможны и другие изменения макета, связанные с активируемым пользователем элементом 306, такие как вывод в нем текста. Также следует отметить, что конкретный вариант реализации изменения 704 макета в общем случае зависит от реализации активируемого пользователем элемента 306 макета. Например, в тех вариантах реализации настоящей технологии, где активируемый пользователем элемент 306 макета представляет собой радиокнопку или флажок, и, следовательно, имитируемое пользовательское действие с ним представляет собой «клик» на нем, изменение 704 макета может включать в себя автоматическое изменение других радиокнопок или флажков (не показаны) на веб-странице 302, отображение ввода дополнительных полей ввода и т.п.

[0128] Далее способ 800 продолжается на шаге 810.

Шаг 810: запрещение процессором предоставления браузерным приложением персонализированных подсказок браузера в по меньшей мере одном активируемом пользователем элементе макета на веб-странице во время ее отображения, если изменение макета указывает на способность веб-страницы предоставлять персонализированные подсказки веб-страницы в этом по меньшей мере одном активируемом пользователем элементе макета.

[0129] Согласно некоторым не имеющим ограничительного характера вариантам осуществления настоящей технологии, на шаге 810 процессор 110 путем определения того, что имитируемое пользовательское действие с какой-либо точкой из множества точек инициирует изменение 704 макета, может определять, что веб-страница 302 способна предоставлять персонализированные подсказки веб-страницы. В связи с этим, согласно не имеющим ограничительного характера вариантам осуществления настоящей технологии, процессор 110 может запрещать предоставление браузерным приложением 215 персонализированных подсказок браузера в активируемом пользователем элементе 306 макета. Таким образом процессор 110 способен предотвращать наложение персонализированных подсказок браузера и персонализированных подсказок веб-страницы, в результате чего предполагается улучшение восприятия пользователем взаимодействия с браузерным приложением 215 и с веб-страницей 302.

[0130] В других не имеющих ограничительного характера вариантах осуществления настоящей технологии, если определено, что имитируемое пользовательское действие с какой-либо точкой из множества точек, задающих схему 702 сканирования, инициирует изменения 704 макета, то процессор 110 может запрещать серверу 250 предоставлять персонализированные подсказки веб-страницы для вывода их в активируемом пользователем элементе 306 макета.

[0131] На этом выполнение способа 800 завершается.

[0132] Таким образом, некоторые не имеющие ограничительного характера варианты осуществления способа 800 предназначены для назначения приоритетов персонализированным подсказкам браузера и персонализированным подсказкам веб-страницы друг относительно друга, в результате чего предполагается улучшение восприятия пользователем взаимодействия с веб-страницами.

[0133] Для специалиста в данной области могут быть очевидными возможные изменения и усовершенствования описанных выше вариантов осуществления настоящей технологии. Предшествующее описание приведено лишь в иллюстративных целях, а не для ограничения объема изобретения. Объем охраны настоящей технологии определяется исключительно объемом приложенной формулы изобретения.

[0134] Несмотря на то, что описанные выше варианты реализации приведены со ссылкой на конкретные шаги, выполняемые в определенном порядке, должно быть понятно, что эти шаги могут быть объединены, разделены или что их порядок может быть изменен без выхода за границы настоящей технологии. Соответственно, порядок и группировка шагов не носят ограничительного характера для настоящей технологии.

Похожие патенты RU2813299C2

название год авторы номер документа
Способ и система для управления поля веб-страницы 2022
  • Лисицын Сергей Олегович
  • Смирнова Ольга Юрьевна
  • Иванов Роман Кириллович
RU2816297C2
Способ и сервер для формирования расширенного запроса 2021
  • Юдин Сергей Михайлович
  • Орешин Павел Евгеньевич
  • Думбай Алексей Дмитриевич
RU2813582C2
СПОСОБ И СИСТЕМА ДЛЯ ФОРМИРОВАНИЯ ПОДСКАЗОК ПО РАСШИРЕНИЮ ПОИСКОВЫХ ЗАПРОСОВ В ПОИСКОВОЙ СИСТЕМЕ 2019
  • Шаграев Алексей Галимович
RU2744111C2
Способ и сервер для передачи персонализированного сообщения на пользовательское электронное устройство 2017
  • Дьяченко Юрий Игоревич
  • Кузьмин Михаил Николаевич
  • Чернилевский Денис Александрович
  • Шаблинский Евгений Александрович
RU2739720C2
СИСТЕМА И СПОСОБ ЗАВЕРШЕНИЯ ПОЛЬЗОВАТЕЛЬСКОГО ЗАПРОСА И ПРЕДОСТАВЛЕНИЯ ОТВЕТА НА ЗАПРОС 2013
  • Плахов Андрей Григорьевич
  • Шорина Светлана Юрьевна
  • Есиновская Ирина Викторовна
  • Грунтова Елена Семеновна
  • Еремеев Василий Александрович
RU2592393C2
СПОСОБ И СИСТЕМА ДЛЯ СОЗДАНИЯ ПЕРСОНАЛИЗИРОВАННОГО ПОЛЬЗОВАТЕЛЬСКОГО ПАРАМЕТРА ИНТЕРЕСА ДЛЯ ИДЕНТИФИКАЦИИ ПЕРСОНАЛИЗИРОВАННОГО ЦЕЛЕВОГО ЭЛЕМЕНТА СОДЕРЖИМОГО 2017
  • Езепов Илья Сергеевич
RU2757546C2
СПОСОБ И СИСТЕМА ДЛЯ ОБУЧЕНИЯ АЛГОРИТМА МАШИННОГО ОБУЧЕНИЯ ПРОГНОЗИРОВАНАНИЮ ОЦЕНКИ ВИДИМОСТИ 2022
  • Стебелев Максим Ильич
  • Ворожцов Артем Викторович
  • Калинин Павел Владимирович
RU2814079C1
СПОСОБ И СИСТЕМА ДЛЯ ОБНАРУЖЕНИЯ МОШЕННИЧЕСКОГО ДОСТУПА К ВЕБ-РЕСУРСУ 2019
  • Валгушев Данил Николаевич
  • Павлов Георгий Эдуардович
  • Маликов Артур Азаматович
  • Ашихмин Владимир Викторович
RU2781477C2
СПОСОБ И СЕРВЕР ДЛЯ КЛАССИФИКАЦИИ ВЕБ-РЕСУРСА 2017
  • Ковалев Андрей Валентинович
RU2658878C1
СПОСОБ ФОРМИРОВАНИЯ ПОЛЬЗОВАТЕЛЬСКОГО ЗАПРОСА 2016
  • Балян Максим Андреевич
RU2677379C2

Иллюстрации к изобретению RU 2 813 299 C2

Реферат патента 2024 года СПОСОБ И СИСТЕМА УПРАВЛЕНИЯ ОТОБРАЖЕНИЕМ ВЕБ-СТРАНИЦЫ

Изобретение относится к способам управления отображением веб-страницы в браузерном приложении. Техническим результатом является предотвращение конфликта между персонализированными подсказками веб-страниц и браузера в элементе макета веб-страницы при отображении веб-страницы в браузерном приложении. Способ включает в себя: получение данных, представляющих веб-страницу, подлежащую отображению в браузерном приложении; определение на основе этих данных на веб-странице по меньшей мере одного активируемого пользователем элемент макета, демонстрируемого во время отображения веб-страницы; инициирование имитируемого пользовательского действия с по меньшей мере одним активируемым пользователем элементом макета; определение того, инициирует ли имитируемое пользовательское действие изменение макета, указывающее на способность веб-страницы предоставлять в по меньшей мере одном активируемом пользователем элементе макета персонализированные подсказки веб-страницы; в ответ на изменение макета запрещение предоставления браузерным приложением персонализированных подсказок браузера в по меньшей мере одном активируемом пользователем элементе макета на веб-странице во время ее отображения. 3 н. и 17 з.п. ф-лы, 8 ил.

Формула изобретения RU 2 813 299 C2

1. Способ управления отображением веб-страницы в браузерном приложении, выполняемый процессором электронного устройства, выполняющего браузерное приложение, способное предоставлять персонализированные подсказки браузера в по меньшей мере одном активируемом пользователем элементе макета веб-страницы, и включающий в себя:

получение процессором данных, представляющих веб-страницу, подлежащую отображению в браузерном приложении;

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

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

определение процессором того, инициирует ли имитируемое пользовательское действие изменение макета, указывающее на способность веб-страницы предоставлять в по меньшей мере одном активируемом пользователем элементе макета персонализированные подсказки веб-страницы, сформированные веб-страницей независимо от браузерного приложения;

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

2. Способ по п. 1, отличающийся тем, что данные, представляющие веб-страницу, содержат исходный код на языке JavaScript и/или на языке CSS.

3. Способ по п. 1, отличающийся тем, что перед инициированием имитируемого пользовательского действия способ дополнительно включает в себя:

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

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

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

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

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

7. Способ по п. 1, отличающийся тем, что имитируемое пользовательское действие включает в себя проверку обращения к по меньшей мере одному активируемому пользователем элементу макета.

8. Способ по п. 1, отличающийся тем, что инициирование имитируемого пользовательского действия выполняется до отображения веб-страницы.

9. Способ по п. 1, отличающийся тем, что инициирование имитируемого пользовательского действия выполняется во время отображения веб-страницы.

10. Способ по п. 1, отличающийся тем, что инициирование имитируемого пользовательского действия выполняется в ответ на обновление веб-страницы.

11. Способ по п. 1, отличающийся тем, что изменение макета, указывающее на способность веб-страницы предоставлять персонализированные подсказки веб-страницы, определяется блоком визуализации браузерного приложения следующим образом: блок визуализации определяет, что изменение макета указывает на способность веб-страницы предоставлять персонализированные подсказки веб-страницы, если имитируемое пользовательское действие с по меньшей мере одним активируемым пользователем элементом макета инициирует изменение его макета.

12. Способ управления отображением веб-страницы в браузерном приложении, выполняемый процессором электронного устройства, выполняющего браузерное приложение, способное предоставлять персонализированные подсказки браузера в по меньшей мере одном активируемом пользователем элементе макета веб-страницы, и включающий в себя:

получение процессором данных, представляющих веб-страницу, подлежащую отображению в браузерном приложении;

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

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

определение процессором того, инициирует ли имитируемое пользовательское действие изменение макета, указывающее на способность веб-страницы предоставлять в по меньшей мере одном активируемом пользователем элементе макета персонализированные подсказки веб-страницы, сформированные веб-страницей независимо от браузерного приложения;

запрещение процессором одного заранее заданного действия из следующих:

предоставление браузерным приложением персонализированных подсказок браузера в по меньшей мере одном активируемом пользователем элементе макета на веб-странице во время ее отображения;

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

если изменение макета указывает на способность веб-страницы предоставлять персонализированные подсказки веб-страницы в этом по меньшей мере одном активируемом пользователем элементе макета.

13. Способ по п. 12, отличающийся тем, что данные, представляющие веб-страницу, содержат исходный код на языке JavaScript и/или на языке CSS.

14. Способ по п. 12, отличающийся тем, что перед инициированием имитируемого пользовательского действия способ дополнительно включает в себя:

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

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

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

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

17. Способ по п. 12, отличающийся тем, что имитируемое пользовательское действие включает в себя проверку обращения к по меньшей мере одному активируемому пользователем элементу макета.

18. Способ управления отображением веб-страницы в браузерном приложении, выполняемый процессором электронного устройства, выполняющего браузерное приложение, способное предоставлять персонализированные подсказки браузера в по меньшей мере одном активируемом пользователем элементе макета веб-страницы, и включающий в себя:

получение процессором данных, представляющих веб-страницу, подлежащую отображению в браузерном приложении;

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

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

определение процессором того, инициирует ли имитируемое пользовательское действие изменение макета в по меньшей мере одном активируемом пользователем элементе макета;

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

19. Способ по п. 18, отличающийся тем, что изменение макета в по меньшей мере одном активируемом пользователем элементе макета указывает на способность веб-страницы предоставлять пользователю, просматривающему веб-страницу, в по меньшей мере одном активируемом пользователем элементе макета персонализированные подсказки веб-страницы, сформированные веб-сервером, на котором размещена веб-страница.

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

Документы, цитированные в отчете о поиске Патент 2024 года RU2813299C2

US 7716596 B2, 11.05.2010
US 9330200 B2, 03.05.2016
US 7660779 B2, 09.02.2010
Способ восстановления спиралей из вольфрамовой проволоки для электрических ламп накаливания, наполненных газом 1924
  • Вейнрейх А.С.
  • Гладков К.К.
SU2020A1
СПОСОБ И СИСТЕМА ДЛЯ ОПРЕДЕЛЕНИЯ СЛЕДУЮЩЕГО СОСТОЯНИЯ БЛОКА РЕКОМЕНДАЦИИ ДЛЯ ОТОБРАЖЕНИЯ В ВЕБ-БРАУЗЕРЕ 2018
  • Борисов Максим Олегович
  • Голиков Алексей Владимирович
RU2746848C1
RU 2012117817 A, 10.11.2013.

RU 2 813 299 C2

Авторы

Комиссаров Александр Владимирович

Байбик Сергей Вячеславович

Даты

2024-02-09Публикация

2022-04-12Подача