"Пилю, пилю, а оно все не золотое! Пилите, Шура, пилите." Из разговора Балаганова с Панковским.
О технологии раскрутки этих самых веб сайтов. Об этой самой promotion of sites.
Ты помнишь как все начиналось, все было впервые...
Надо взять браузер, того же ослика, зайти на www.yandex.ru, написать в строке поиска "Доска объявлений Каталог сайтов",
кликнуть по кнопке и закопировать результаты поиска (страниц 10 - 20) на свой комп.
А дальше сиди себе спокойно, копируй ссылки в адресную строку браузера и успевай только формы заполнять.
Пилите, Шура, пилите... Так ведь целый день пилю, на карточке почти ноль остался, а оно все не золотое! Так, замодернизируем процесс: открывать будем 5 - 6 окон браузера, отключим Инет, через клипборд будем вставлять наши сообщения
в формы, а потом подключимся и - успевай только Submit нажимать.
Ну вот, другое дело! Только вот крыша слегка поехала, карточка закончилась, забыл на каких ресурсах уже был, а эти ребята на разных
досках разные данные, разного формата, разной длинны требуют, блин! Кнопки на мышке (особенно правая) докрасна накалилась.
Не, не золотое... Так, замодернизируем процесс: заменим осла на Oперу (одно окно - куча вкладок), ссылки разместим в базе данных (Access, Excel, да мало ли),
где будем ставить дату размещения объявы и какие-то ремарки по поводу данного ресурса, варианты заполнения полей в форме
разместим в редакторе где тоже есть вкладки. И, самое главное, все три окна распредилим так, что бы они не перекрывали друг друга:
сверху на всю ширину экрана - Оперу, а внизу - базу данных ссылок и наши объявления.
Лучше конечно, намного лучше, но не золотое, блин! Так, замодернизируем процесс:
Почитаем доки-книжицы, где тут умное, доброе, вечное прописано?
Ага, вот - то, что нам нужно. ActiveX control, Web Browser, называется
С этого места поподробней, пожалуйста, я записываю.
Берем какой-нибудь язык программирования, тот же VB, допустим, и швыряем на формочку:
Базу данных с гридом
Вкладки (таже SSTab, допустим) с Web Browser
Базу данных с вариантами наших объяв
И чё? Через плечё, блин:
Так мы можем получить имя формы по её номеру(если захотим) WebBrowser1(SSTab1.Tab).Document.Forms(NumbeForm).Name
Так мы получим тип элемента формы WebBrowser1(SSTab1.Tab).Document.Forms(NumbeForm).elements(I).Type
Так мы получим количество элементов в форме WebBrowser1(SSTab1.Tab).Document.Forms(NumbeForm).length
А вот так - его индекс (порядковый номер) WebBrowser1(SSTab1.Tab).Document.Forms(NumbeForm).elements(I).sourceindex
А так вот - имя элемента WebBrowser1(SSTab1.Tab).Document.Forms(NumbeForm).elements(I).Name
Так - тип элемента WebBrowser1(SSTab1.Tab).Document.Forms(NumbeForm).elements(I).Type
А так - его Value WebBrowser1(SSTab1.Tab).Document.Forms(NumbeForm).elements(I).Value которое и в Африке - Value. Если ты, конечно, бывал в этой самой Африке, я, например, не был.
А так - где курсор стоит WebBrowser1(SSTab1.Tab).Document.activeElement.Name
А это и так понятно .tagName; .Action; .Method; .URL; я надеюсь.
А дальше, ребятки, кто во что горазд, согласно своим идеалам и принципам.
Вопросы.
Почему летит ошибка о том, что поле не поддерживает заданного свойства?
Либо вы явно пытаетесь заполнить поле типа "Списка" или "Радио"
Либо вы неверно задаете номер формы.
Проблема в том, что форм на странице может быть несколько: ваша (назовем ее актуальной) форма, допустим, форма опроса и, допустим, форма поиска.
И не факт, что эти формы могут иметь имена или ID, но браузер присвоит им номера (от ноля и далее). И ваша задача самому определить номер актуальной формы.
Скорее всего, но опять же не факт, в актуальной форме количество полей будет больше, чем в других.
Скорее всего, но опять же не факт, в актуальной форме будет присутствовать поле тита "textarea".
Скорее всего, но опять же не факт, в актуальной форме будет присутствовать пара кнопок "submit" и "reset".
Скорее всего, но опять же не факт, в актуальной форме поля типа "text" будут длиннее, чем в ругих.
Проанализировав все эти дела можно, с большой долей вероятностью определить номер актуальной формы.
На всяки случай воткните где - нибудь недалеко поле из вашей базы данных, где вы сможете быстренько ввести номер формы.
И, пожалуйста, не надо меня спрашивать что и как я делал конкретно. Если уж вы взались за перо, что бы написать свою программу,
ну пошевелите мозгами, это же так интересно. А способов реализации может быть целая куча.