Ошибки в логе | TermiDroid
Войти или зарегистрироваться
Ошибки в логе
Тема в разделе «Разбор ошибок», создана пользователем SlimperMan, 9 июн 2018.
-

SlimperMan
New MemberПрошу объяснить причину появляющихся ошибок и действия, которые необходимо предпринять при их появлении:
1. Выполнение действия WebBrowserTabManagement Ошибка обращения к Instance.GetTabByAddress
2. Выполнение действия WebBrowserSettings Ошибка обращения к Instance.SetProxy
3. Выполнение действия WebBrowserTab Ошибка обращения к Instance.ActiveTab
4. Выполнение действия Emulation Ошибка обращения к Instance.SendText
SlimperMan,
9 июн 2018
#1Ответить
Ответить в теме
Поделиться этой страницей
- Ваше имя или e-mail:
- У Вас уже есть учётная запись?
-
- Нет, зарегистрироваться сейчас.
- Да, мой пароль:
-
Забыли пароль?
-
Запомнить меня
Поиск
-
- Искать только в заголовках
- Сообщения пользователя:
-
Имена участников (разделяйте запятой).
- Новее чем:
-
- Искать только в этой теме
- Искать только в этом разделе
- Отображать результаты в виде тем
-
Быстрый поиск
- Последние сообщения
Больше…
-
Саня
- Сообщения: 1
- Зарегистрирован: 01 апр 2020, 07:08
Не получается запустить C#
работаю с Демо не получается запустить C# в таком виде
var elementTools = instance.ActiveTab.FindElementByAttribute(«strong», «innertext», «Мой\ профиль», «regexp», 0);
if (!elementTools.IsVoid)
{
instance.WaitFieldEmulationDelay();
elementTools.RiseEvent(«click», instance.EmulationLevel);
instance.ActiveTab.WaitDownloading();
return «»;
}
Это кот я взял из другой программы Там он работает а здесь у меня не получается что я делаю не так
-
Support
- Site Admin
- Сообщения: 996
- Зарегистрирован: 10 апр 2009, 17:45
- Контактная информация:
Re: Не получается запустить C#
Сообщение
Support » 01 апр 2020, 13:47
Нет необходимых библиотек для работы этого кода.
Подключите XHE.dll к проекту через Visual Studio и пишите скрипт там, если эта программа предоставляет такие библиотеки.
А вообще этот код легко переписывается через наш фреймворк.
-
Oleg1987
- Сообщения: 4
- Зарегистрирован: 21 фев 2020, 18:15
Re: Не получается запустить C#
Сообщение
Oleg1987 » 07 апр 2020, 23:37
Так это api зеннопостера. С чего оно должно работать в human?
This topic has been deleted. Only users with topic management privileges can see it.
Здраствуйте, реально ли совершать клик по объекту зная его class и его порядковый номер (если не один)
попробуй как здесь http://wiki.bablosoft.com/doku.php?id=ru:tutorial2
только вместо парсить,
узнай css, удали лишнее, и кликай
@No именно так все и устроенно! Порядок такой — нажимаем на нужный объект левой кнопкой мыши — выбираем — двигать мышь и кликнуть на элемент — и выбираешь match (существует три вида клика — по css — по тексту match — b по координатам

@Turutur Ну match я видел. Только вот не будет работать если кнопок три и мне нужно кликнуть на вторую, а скрипт кликнет только на первую.
Получается нужен более продвинутый конструктор?
Например на с# этот клик я могу сделать этим кодом
HtmlElement he = instance.ActiveTab.GetDocumentByAddress(«0»).FindElementByTag(«form», 1).FindChildByAttribute(«span», «class», «b-combo__arrow», «text», 0);
if (he.IsVoid) return -1;
Можно ли этот код внедрить в BAS ?
Ну мой главный вопрос: Реально ли подобный код перенести в BAS ?
HtmlElement he = instance.ActiveTab.GetDocumentByAddress(«0»).FindElementByTag(«form», 1).FindChildByAttribute(«span», «innertext», «Переводы», «regexp», 0);
if (he.IsVoid) return -1;
Если нельзя. Можно ли как сделать чтобы объект для клика искался по «innertext» или «innerhtml» ?
@No человек — да ты продвинутый юзер — не пугай меня кодом — не мой уровень — где то видел выполнить код — Жди поддержку @support — или может еще кто шарит. Извиняй — не смог помочь. Если тема не палевая — запости пожалйста скрин и пример — может пригодится — я не встречал проблем с кликом по элементам….
Ну я знаю лишь азы С#, и код этот я беру с другого софта на подобии BAS.
Вот я и привык там кликать только по элементам (там по CSS кликать вроде бы и нельзя)и мне кажется что так удобней работать.
Например софт который кликает по значению «innertext» ,по идеи, должен быть рабочим дольше чем клики по css
@No это дело — привычки — я сам слез с «зенки» — BAS больше нравиться — хотя еще в стадии разработки и да некоторые элементы реализованы » не так» — после использования «другого софта» — просто нужно смириться и понять здешний алгоримт)
@No
Здраствуйте, реально ли совершать клик по объекту зная его class и его порядковый номер (если не один)
Здравствуйте, да реально, для этого после селектора нужно поставить номер в треугольных скобках. Допускается использование переменных.
Например, 3 ссылка a<2>
или сслыка в цикле a<[[CYCLE_INDEX]]>
@No
HtmlElement he = instance.ActiveTab.GetDocumentByAddress(«0»).FindElementByTag(«form», 1).FindChildByAttribute(«span», «class», «b-combo__arrow», «text», 0);
В БАС это будет так
page().all("form").at(0).css("span.b-combo__arrow").text()!
[[RESULT_TEXT]] = _result()
Нужно вставлять в действие выполнить код
@No
По innerHTML можно кликать так, как показал @Turutur http://community.bablosoft.com/post/2265
В будущем также планируется конструктор запросов, вроде конструктора для логических выражений, которые есть сейчас.
«По innerHTML можно кликать так, как показал @Turutur http://community.bablosoft.com/post/2265»
@support можете, пожалуйста, привести?
@No Ну берете весь код элемента или кусок кода, вставляете в поле, выбираете match вместо css, как показано на картинке. И происходит поиск по innerHTML
@support said in Как кликать по HTML а не CSS:
вроде конструктора для логических выражений, которые есть сейчас
@support — пожалуйста сделайте возможность в конструкторе регулярок — сразу переходить на страницу теста.
зачем: допустим — делал регулярку общую к каким то данным с разных страниц — то есть универсальную — например регулярка которая вытаскивает прокси и порты, ссылки и так далее — она сохранена в файл — и чтобы не тратить время на создание регулярки через констрктор при тесте — сразу проверить работает ли сохраненная регулярка или полученная с другого источника
@Turutur Таких сервисов полно. Например, https://regex101.com/
@support например у меня есть такой код
<span class=»b-combo__item-inner» dbid=»46″ dbprid=»3″ style=»cursor:pointer»>Автомобили</span>
Можно ли кликнуть используя только эту часть, ибо всё остальное не постоянное. (Не получается так)
style=»cursor:pointer»>Автомобили</span>
@No Можно сайт, я бы попробовал.
@support Я думаю только вы сможете разобраться в этой ситуации)
Есть страница https://www.fl.ru/projects/ Тут нужно выбрать с выпадающего списка 2 категории, не важно какие, ну пускай это будет «Тексты: Статьи»
Можно конечно по простому сделать

Но тогда нельзя будет просто перестроить скрипт например на» Разработка игр: 3D Моделирование» А вот если бы клики происходили по innerHTML, то тогда было бы лишь достаточно изменить данные в переменной и скрипт бы кликал по нужным категориям.
Как подсказал @Canine , можно сделать клик указав просто текст без кода.

Но тогда вторую подкатегорию выбрать не получиться.
Что можете посоветовать?
@No А если просто через ввод написать то что нужно оно вроде выбирает 
0_1475782625517_тест ввод.xml
|
rashk1n 0 / 0 / 0 Регистрация: 08.01.2016 Сообщений: 13 |
||||
|
1 |
||||
Ошибка: Отсутствует внешняя точка для выхода из цикла или продолжения08.01.2016, 13:58. Показов 4528. Ответов 4 Метки нет (Все метки)
Выходит ошибка:
Добавлено через 1 час 56 минут
__________________
0 |
|
5856 / 4733 / 2940 Регистрация: 20.04.2015 Сообщений: 8,361 |
|
|
08.01.2016, 14:01 |
2 |
|
rashk1n,
0 |
|
rashk1n 0 / 0 / 0 Регистрация: 08.01.2016 Сообщений: 13 |
||||
|
18.01.2016, 12:47 [ТС] |
3 |
|||
|
код в zennoposter
0 |
|
Даценд
5856 / 4733 / 2940 Регистрация: 20.04.2015 Сообщений: 8,361 |
||||
|
18.01.2016, 14:55 |
4 |
|||
|
Решениеrashk1n,
Иначе в цикле будет крутиться только пустой оператор. А весь код в строках 6-23 будет вне цикла и брику неоткуда выходить.
1 |
|
0 / 0 / 0 Регистрация: 08.01.2016 Сообщений: 13 |
|
|
18.01.2016, 15:20 [ТС] |
5 |
|
Даценд, благодарю! не внимателен был.
0 |
| Type | Array |
|---|---|
| Mandatory | No |
| Manifest version | 2 или выше |
| Example |
"permissions": [ "webRequest" ] |
Используйте ключ permissions чтобы запросить специальные полномочия для вашего расширения. Этот ключ представляет собой массив строк, и каждая строка представляет собой запрос разрешения.
Если вы запрашиваете разрешения с помощью этого ключа, тогда браузер может сообщить пользователю во время установки, что расширение запрашивает определенные привилегии, и попросить его подтвердить, что они готовы предоставить эти привилегии. Браузер также может позволять пользователю проверять права расширения после установки. Поскольку запрос на предоставление привилегий может повлиять на желание пользователей установить ваше расширение, запрос привилегий заслуживает внимательного рассмотрения. Например, вы хотите избежать запроса ненужных разрешений и можете указать информацию о том, почему вы запрашиваете разрешения, в описании магазина расширения. Дополнительные сведения о проблемах, которые следует учитывать, см. В статье Запрос необходимых разрешений .
Для получения информации о том, как тестировать и предварительно просматривать запросы разрешений, см. Тестовые запросы разрешений на сайте Extension Workshop.
Ключ может содержать три вида разрешений:
- разрешения хоста (только Manifest V2, разрешения хоста указаны в ключе манифеста
host_permissionдля Manifest V3 или выше). - API permissions
activeTabразрешение
Host permissions
Примечание. При использовании Manifest V3 или более поздней версии разрешения хоста должны быть указаны в ключе манифеста host_permission .
Разрешения хоста указываются как шаблоны соответствия , и каждый шаблон определяет группу URL-адресов, для которых расширение запрашивает дополнительные привилегии. Например, разрешение хоста может быть "*://developer.mozilla.org/*" .
Дополнительные привилегии включают:
- XMLHttpRequest и получение доступа к этим источникам без ограничений на разные источники (даже для запросов, сделанных из сценариев содержимого)
- умение читать закладки конкретных метаданных без «закладок» разрешения, таких как
url,title, иfavIconUrlсвойстваtabs.Tabобъектов - возможность программно внедрять скрипты (с помощью
tabs.executeScript()) в страницы, обслуживаемые из этих источников - возможность получать события от API
webrequestдля этих хостов - возможность доступа к файлам cookie для этого хоста с помощью API
cookies, если также включено разрешение API"cookies". - обход защиты от отслеживания для страниц расширения,где хост указан как полный домен или с подстановочными знаками.Однако скрипты содержимого могут обходить защиту от отслеживания только для хостов,указанных с полным доменом.
В Firefox,начиная с версии 56,расширения автоматически получают разрешения хоста для своего собственного происхождения,которое имеет вид:
moz-extension:
где 60a20a9b-1ad4-af49-9b6c-c64c98c37920 — это внутренний идентификатор расширения. Расширение может получить этот URL программно, вызвав extension.getURL() :
browser.extension.getURL(""); // moz-extension://60a20a9b-1ad4-af49-9b6c-c64c98c37920/
API permissions
Разрешения API указываются в виде ключевых слов, и каждое ключевое слово обозначает API WebExtension, который расширение хотело бы использовать.
В настоящее время доступны следующие ключевые слова:
activeTabalarmsbackgroundbookmarksbrowserSettingsbrowsingDatacaptivePortalclipboardReadclipboardWritecontentSettingscontextMenuscontextualIdentitiescookiesdebuggerdnsdownloadsdownloads.openfindgeolocationhistoryidentityidlemanagementmenusmenus.overrideContextnativeMessagingnotificationspageCapturepkcs11privacyproxyscriptingsearchsessionsstoragetabHidetabsthemetopSitesunlimitedStoragewebNavigationwebRequestwebRequestBlocking
В большинстве случаев разрешение просто предоставляет доступ к API,за следующими исключениями:
-
tabsдает вам доступ кprivileged parts of theбез необходимости разрешения хоста :tabsAPITab.url,Tab.titleиTab.faviconUrl.- В Firefox 85 и выше, вы также должны
tabs, если вы хотите включитьurlвqueryInfoпараметра дляtabs.query(). Остальные APItabsможно использовать без запроса разрешения. - Начиная с Firefox 86 и Chrome 50, соответствующие разрешения хоста также можно использовать вместо разрешения «вкладки».
- В Firefox 85 и выше, вы также должны
-
webRequestBlockingпозволяет использовать аргумент"blocking", чтобы вы моглиmodify and cancel requests. -
downloads.openпозволяет использовать APIdownloads.open(). -
tabHideпозволяет использовать APItabs.hide().
activeTab permission
Это разрешение указано как "activeTab" . Если расширение имеет разрешение activeTab , тогда, когда пользователь взаимодействует с расширением, расширению предоставляются дополнительные привилегии только для активной вкладки.
«Взаимодействие с пользователем» включает:
- пользователь нажимает на действие браузера или действие страницы расширения
- пользователь выбирает пункт контекстного меню
- пользователь активирует комбинацию клавиш,определенную расширением
Дополнительными привилегиями являются:
- Возможность программно вставлять JavaScript или CSS во вкладку с помощью
browser.tabs.executeScript()иbrowser.tabs.insertCSS() - Доступ к привилегированным частям API вкладок для текущей вкладки:
Tab.url,Tab.titleиTab.faviconUrl.
Это разрешение предназначено для того,чтобы позволить расширениям выполнять общие задачи,не предоставляя им очень мощных разрешений.Многие расширения хотят «сделать что-то с текущей страницей,когда пользователь попросит».
Например, рассмотрим расширение, которое хочет запустить сценарий на текущей странице, когда пользователь щелкает действие браузера. Если разрешение activeTab не существует, расширение должно будет запросить разрешение хоста <all_urls> . Но это дает расширению больше возможностей, чем ему нужно: теперь оно может выполнять сценарии на любой вкладке в любое время , когда ему нравится, а не только на активной вкладке и только в ответ на действие пользователя.
Примечание. Вы можете получить доступ только к той вкладке / данным, которые были там, когда произошло взаимодействие с пользователем (например, щелчок). Когда активная вкладка уходит (например, из-за завершения загрузки или какого-либо другого события), разрешение больше не дает вам доступа к вкладке.
Обычно вкладка, которой предоставлено activeTab , — это просто текущая активная вкладка, за исключением одного случая. menus API , дает расширение , чтобы создать пункт меню , который показан , если пользователь контекстно-нажимает на вкладке (то есть, на элементе в TabStrip , который позволяет пользователю переключаться с одной вкладки на другую).
Если пользователь щелкает такой элемент, то разрешение activeTab предоставляется для вкладки, которую щелкнул пользователь, даже если это не текущая активная вкладка (в Firefox 63, ошибка 1446956 ).
Clipboard access
Unlimited storage
Разрешение unlimitedStorage :
- Позволяет расширениям превышать любую квоту, установленную API
storage.local - В Firefox позволяет расширениям создавать «постоянную» базу данных IndexedDB без запроса браузера у пользователя во время создания базы данных.
Example
"permissions": ["*://developer.mozilla.org/*"]
Только в Manifest V2 запрашивайте привилегированный доступ к страницам на странице developer.mozilla.org .
Запросите доступ к привилегированным частям API tabs .
"permissions": ["*://developer.mozilla.org/*", "tabs"]
Только в Manifest V2 запросите оба вышеуказанных разрешения.
Browser compatibility
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | |
permissions |
Yes |
14 |
48 |
? |
Yes |
14 |
? |
? |
48 |
? |
15 |
? |
activeTab |
Yes |
79 |
48 |
? |
Yes |
14 |
? |
? |
48 |
? |
15 |
? |
alarms |
Yes |
79 |
48 |
? |
Yes |
14 |
? |
? |
48 |
? |
15 |
? |
background |
10 |
79 |
No |
? |
No |
No |
? |
? |
No |
? |
No |
? |
bookmarks |
Yes |
15 |
48 |
? |
Yes |
No |
? |
? |
No |
? |
No |
? |
browserSettings |
No |
No |
56 |
? |
No |
No |
? |
? |
56 |
? |
No |
? |
browsingData |
Yes |
79 |
53 |
? |
Yes |
No |
? |
? |
85 56-79 |
? |
No |
? |
captivePortal |
No |
No |
68 |
? |
No |
No |
? |
? |
No |
? |
No |
? |
clipboardRead |
Yes |
79 |
54 |
? |
Yes |
No |
? |
? |
54 |
? |
No |
? |
clipboardWrite |
Yes |
79 |
51 |
? |
Yes |
14 |
? |
? |
51 |
? |
15 |
? |
contentSettings |
Yes |
79 |
No |
? |
Yes |
No |
? |
? |
No |
? |
No |
? |
contextMenus |
Yes |
14 |
55 Доступно как псевдоним для разрешения |
? |
Yes |
14 Доступно как псевдоним для разрешения |
? |
? |
No |
? |
No |
? |
contextualIdentities |
No |
No |
53 |
? |
No |
No |
? |
? |
53 |
? |
No |
? |
cookies |
Yes |
14 |
48 |
? |
Yes |
14 |
? |
? |
48 |
? |
15 |
? |
debugger |
Yes |
79 |
No |
? |
Yes |
No |
? |
? |
No |
? |
No |
? |
dns |
No |
No |
60 |
? |
No |
No |
? |
? |
60 |
? |
No |
? |
downloads |
Yes |
79 |
48 |
? |
Yes |
No |
? |
? |
48 |
? |
No |
? |
downloads_open |
Yes |
79 |
48 |
? |
Yes |
No |
? |
? |
48 |
? |
No |
? |
find |
No |
No |
57 |
? |
No |
No |
? |
? |
No |
? |
No |
? |
geolocation |
Yes |
14 |
54 |
? |
Yes |
No |
? |
? |
54 |
? |
No |
? |
history |
Yes |
79 |
49 |
? |
Yes |
No |
? |
? |
No |
? |
No |
? |
identity |
Yes |
79 |
53 |
? |
Yes |
No |
? |
? |
No |
? |
No |
? |
idle |
Yes |
15 |
48 |
? |
Yes |
No |
? |
? |
48 |
? |
No |
? |
management |
Yes |
79 |
51 |
? |
Yes |
No |
? |
? |
51 |
? |
No |
? |
menus |
No |
No |
53 |
? |
No |
14 |
? |
? |
No |
? |
No |
? |
nativeMessaging |
29 |
15 |
50 |
? |
16 |
14 |
? |
? |
No |
? |
15 |
? |
notifications |
5 |
79 |
48 |
? |
25 |
No |
? |
? |
48 |
? |
No |
? |
pageCapture |
Yes |
79 |
No |
? |
Yes |
No |
? |
? |
No |
? |
No |
? |
pkcs11 |
No |
No |
58 |
? |
No |
No |
? |
? |
No |
? |
No |
? |
privacy |
Yes |
79 |
54 |
? |
Yes |
No |
? |
? |
54 |
? |
No |
? |
proxy |
33 |
79 |
55 |
? |
No |
No |
? |
? |
55 |
? |
No |
? |
search |
No |
No |
63 |
? |
No |
No |
? |
? |
No |
? |
No |
? |
sessions |
Yes |
79 |
52 |
? |
Yes |
No |
? |
? |
No |
? |
No |
? |
storage |
Yes |
14 |
48 |
? |
Yes |
14 |
? |
? |
48 |
? |
15 |
? |
tabHide |
No |
No |
61 |
? |
No |
No |
? |
? |
No |
? |
No |
? |
tabs |
Yes |
14 |
48 |
? |
Yes |
14 |
? |
? |
54 |
? |
15 |
? |
theme |
No |
No |
55 |
? |
No |
No |
? |
? |
No |
? |
No |
? |
topSites |
Yes |
79 |
52 |
? |
Yes |
No |
? |
? |
52 |
? |
No |
? |
unlimitedStorage |
Yes |
14 |
56 |
? |
No |
16 Начиная с Safari 16 квота хранилища не ограничена. 14 Не предоставляет неограниченную квоту хранения.Предоставляет квоту на хранение 10 МБ вместо стандартных 5 МБ. |
? |
? |
56 |
? |
16 Начиная с Safari 16 квота хранилища не ограничена. 15 Не предоставляет неограниченную квоту хранения.Предоставляет квоту на хранение 10 МБ вместо стандартных 5 МБ. |
? |
webNavigation |
Yes |
14 |
48 |
? |
17 |
14 |
? |
? |
48 |
? |
15 |
? |
webRequest |
Yes |
14 |
48 |
? |
Yes |
14 |
? |
? |
48 |
? |
No |
? |
webRequestBlocking |
Yes |
14 |
48 |
? |
Yes |
No |
? |
? |
48 |
? |
No |
? |
Web Extensions
- options_ui
- page_action
- protocol_handlers
- short_name

Сообщение было отмечено rashk1n как решение