Добро пожаловать к нам в гости! Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
Добрый день,я в NB новичок,работаю на нём около месяца,так вот,хотелось бы узнать:В НБ есть функция BrowserSetElement, которая загоняет значения в поля форм в браузере,которые задал юзер.Проблема такова:прога должна вставлять нужные значения в поля форм(mail.ru), но при вставке функции BrowserSetElement со значением-выдаёт "отказано в доступе".Можно ли разрешить эту проблему??? NeoBook 5.7.1...
в примере простая реализация, все работает-дерзай На форуме есть еще примеры с по сабжу(причем для разных ресурсов). Воспользуйся поиском на Главной странице! Кто не хочет качать, ниже DEMBEL написал, что и как надо сделать. В объект WebBrowser1 должна уже быть загружена страница ресурса!
поля на главной маил.ру исправно заполняются. Но если задача в авторизации а не вставке значений в формы, то велкам на другую тему.
p.s: эта команда определяет поля по свойству name, если у поля нет этого св-ва то она его не увидит. Список найденных элементов присутствует в диалоговом окне команды. В других случаях, если требуется изменить содержание страницы следует использовать яваскрипт и команду BrowserExecScript.
IOGA007, Пиши сюда. Если хочешь решить вопрос, то: 1-грамотно обозначать задачу 2-покажи тестовый или проблемный участок кода 3-если необходимо для полного понимания сути приложи проект или ссылку на проблемный ресурс 4- и т.д. Все, что сочтешь нужным. Имей ввиду, успех зависит от того, как участники форума поймут твою проблему Теперь изложи, что у тебя там с
С авторизацией(лог,пасс) всё работает, я и не спорю..А именно с полями вставки ссылки на аватар, аналогично при регистрации, не видит ни одного поля, почему? NeoBook 5.7.1...
Сообщение отредактировано IOGA007 - Сб, 29 Января 2011, 16:03
с полем вставки УРЛ работать будет, а вот с типом file неполучится, в целях безопасности программно менять значения input(file) нельзя! Но, наверное можно через отправку поменять переменную(сам не проверял, просто предположение)
Сообщение отредактировано Сергей - Сб, 29 Января 2011, 17:41
Сергей, спасибо Вам огромнейшее, именно с явой и прокатило.
Добавлено (29 Январь 2011, 17:29) --------------------------------------------- Вот мне ещё что интересно, возможно ли написать реггер ящиков на NB на основе JavaScript?
возможно ли написать реггер ящиков на NB на основе JavaScript?
нет, т.к. сейчас везде при регистрации требуется вводить капчу, как раз от защиты подобных автореггеров. Максимум что можно сделать это отображать капчу в проект и вводить данные вручную, но будут ощутимые сложности с выдиранием капчи и ее "актуализацией" в проекте (чтобы капча соответствовала рабочей сессии). Как задавать вопросы
.какой js скрипт имитирует клик по кнопке в браузере???
имитация именно клика мыши в проекте требует позиционирования курсора на обьект страницы и штатная команда ClickMouse в помощь.
Но на самом деле, то что вы хотите делается по другому. Это называется подтверждение формы с данными. Нужно смотреть что происходит в коде страницы при подтверждении формы (чаще всего POST запрос или выполнение функции яваскрипта) и выполнять нужное действие. Этот вопрос разбирался здесь. Требовалось введение и подтверждение формы логина на iFolder.
существующие технологии и программы еще очень далеки от надежного распознавания нормальных капч. Они (капчи) для того и созданы, чтобы препятствовать автоматическому распознаванию. Советую забыть эту идею. Как задавать вопросы
запрос или выполнение функции яваскрипта) и выполнять нужное действие. Этот вопрос разбирался здесь. Требовалось введение и подтверждение формы логина на iFolder.
тема очень обширная,и нечего полезного там я не нашел,можно конкретно по теме автора сделать пример
Нужно смотреть что происходит в коде страницы при подтверждении формы (чаще всего POST запрос или выполнение функции яваскрипта) и выполнять нужное действие.
Quote (DEMBEL)
чтобы нажать кнопку/поставить галочку и пр. нужно выполнить функцию навешенную на кнопку, например если это форма то смотрим что должно произойти при подтверждении формы, ищем <form name="blabla ... method="post" action="/script.php"> <input name="pass" class="login" type="text"> <input name="prolong" value="продлить" class="button" type="submit"></form> в большинстве случаев, постятся именно значения value полей по их имени: internetpost "http://host.ru/script.php" "prolong=продлить&pass=bla34bla12" Если требуется нажать на кнопку в теле документа (не форме), то она имеет вид (без submit): <input name="refresh" value="Нажми меня" class="button" onclick="Refreshbutton()"> тогда смотришь что в событии onclick (обычно js функция) и выполняешь ее вызов BrowserExecScript "WebBrowser1" "Refreshbutton()" "JSCRIPT"
Начнем по порядку,по твоему способу не удается использовать input поля http://wow-nsk.org/lk_x100/ тут Но я сделал копию этих форм и вставил на стр своего тестового сайта http://foxen2.ucoz.ru/index/login_in_account/0-24 тут. С помощью твоего способа она пашет.На той стр кнопка,на нее и надо нажать.
Добавлено (31 Январь 2011, 13:59) --------------------------------------------- вот еще маленький вопрос, ссылка для голосования имеет вид http://wow-nsk.org/lk_x100/vote.php?id=0&acid=123456
Где 123456 - это ид акка а где 0(от 0 до 4) это номера баннеров. Как можно автоматически распознавать ид акка и обратить его в переменную? или я хочу не возможного
Как можно автоматически распознавать ид акка и обратить его в переменную?
из ссылки получить акк можно путем распарсивания ссылки, если я правильно понял задачу?!
.Если ссылка не будет видоизменятся, т.е. так и будет два парметра в гет запросе(?id=0&acid=123456), то можно так .StrParse "http://wow-nsk.org/lk_x100/vote.php?id=0&acid=123456" "=" "[aParamVal]" "" .Если неизвестно, но точно акк будет последним, то StrParse "http://wow-nsk.org/lk_x100/vote.php?id=0&acid=123456" "?" "[aValGet]" "" StrParse "[aValGet2]" "&" "[aParamGet]" "" StrParse "[aParamGet[nCountParam]]" "=" "[aParamVal]" "" DeleteArray "[aValGet]" "All" DeleteArray "[aParamGet]" "All" .в массиве[aParamVal2] будет номер акка .в других случаях цикл
Сообщение отредактировано Сергей - Пн, 31 Января 2011, 14:42
чтобы голосовать,нужно быть залогиненым ,зашел тыц на Проголосуй за сервер - получи шардики! ,там будет 1 баннер,это пока так, ссылка баннера http://wow-nsk.org/lk_x100/vote.php?id=0&acid=123161 где 123161 это ид акка Здесь же в ссылке есть элемент vote.php?id=0 ,где 0 это номера баннеров(под хайдом еще 4 баннера тоесть чтобы голосовать по ним ссылка должна быть иметь вид
.тестовая строка setvar "[test]" "http://wow-nsk.org/lk_x100/vote.php?id=4&acid=123161" .ищем строку acid=, получаем позицию первого символа SearchStr "acid=" "[test]" "[pos]" "" .берем часть строки, начиная от 5-го символа найденной позиции (acid= + 5 символов) .и копируем 6 символов SubStr "[test]" "[pos]+5" "6" "[akk]" .получится вырезали позицию ид акка AlertBox "" "[akk]"
разумеется, если строка acid= будет неизменной, а ид содержать не менее 6 символов и идти сразу за ней, то будет всегда работать нормально, если относительные позиции и кол-во символов в строке изменятся, то будет брать мусор. Парсинг приведенный выше Сергеем избавлен от этого (частично). Если строка сильно изменится, то сам понимаешь придется подгонять заново...
Тема почищена от сообщений не относящихся к сути вопросов.