Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.62/89: Рейтинг темы: голосов - 89, средняя оценка - 4.62
Somebody-

Заполнить форму на чужом сайте

11.04.2010, 17:06. Показов 16560. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Хочу заполнить форму на чужом сайте. Открываю сайт во фрейме, далее
top.window.frames['frame1'].document.forms['form'].elements['login'].value='aaa'
на это получаю ошибку 'отказано в доступе'.
В чем дело? Что делать?
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.04.2010, 17:06
Ответы с готовыми решениями:

Выделить цитату на чужом сайте
Не знаю, туда ли я зашел. Если на джава это невозможно, тогда направьте в другую ветку форума. У меня задача: сделать на своем сайте список...

Удаление элементов на чужом сайте
Всех приветствую! Случилось так, что на нашем форуме админы ввели не хорошую систему оценивания, которая располагается под постом. Пытаюсь...

Как запретить просмотр видео потока на чужом сайте ?
Подскажите пожалуйста, у меня есть код VLC плеера для броузера, вот код <object...

21
86 / 62 / 69
Регистрация: 15.03.2007
Сообщений: 6,903
11.04.2010, 18:28
Это невозможно по соображениям безопасности
0
Somebody-
11.04.2010, 21:06
И каким образом это можно осуществить?
 Аватар для palva
4278 / 2970 / 693
Регистрация: 08.06.2007
Сообщений: 9,930
Записей в блоге: 5
12.04.2010, 01:12
Если вы хотите ввести поле типа text, то можно сделать автономный скрипт. Поле типа file или password ввести всё равно не удаётся. Например, следующий скрипт работает, а закомментированная строка - нет
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Set ie = CreateObject('InternetExplorer.Application')
ie.Visible = True
ie.Navigate('http://www.mail.ru')
Do While ie.busy
  WScript.Sleep 5000
Loop
f = ie.document.forms.Auth
ie.document.forms.Auth.Login.value='aaa'
ie.document.forms.Auth.Domain.selectedIndex = 1
'ie.document.forms.Auth.Password = 'ppppppp'
ie.document.forms.Auth.submit()
Do While ie.busy
  WScript.Sleep 5000
Loop
MsgBox('OK')
Поместите его в файл с расширением vbs и попробуйте. Может быть у вас получится ввести пароль из скрипта?
0
 Аватар для palva
4278 / 2970 / 693
Регистрация: 08.06.2007
Сообщений: 9,930
Записей в блоге: 5
13.04.2010, 15:22
Уважаемый Somebody не отозвался, а я между тем придумал, как зайти скриптом на бесплатный почтовый ящик. Следующий скрипт заходит на ящик 'rarara@inbox.ru' с паролем 'tututu'
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Set sh = CreateObject('WScript.Shell')
Set ie = CreateObject('InternetExplorer.Application')
ie.Visible = True
sh.AppActivate('Microsoft Internet Explorer')
ie.Navigate('http://www.mail.ru')
Do While ie.busy
 WScript.Sleep 5000
Loop
ie.document.forms.Auth.Login.value='rarara'
' а теперь установим домейн inbox.ru
ie.document.forms.Auth.Domain.selectedIndex = 1
ie.document.forms.Auth.Login.focus()
WScript.Sleep 100
sh.SendKeys('{Tab}{Tab}tututu')
WScript.Sleep 100
ie.document.forms.Auth.submit()
Do While ie.busy
 WScript.Sleep 5000
Loop
MsgBox('OK')
0
4 / 4 / 3
Регистрация: 25.05.2009
Сообщений: 2,576
13.04.2010, 23:37
прикольно!
0
0 / 0 / 0
Регистрация: 14.04.2010
Сообщений: 8
14.04.2010, 15:43
Это всё прикольно, эмулировать нажатия клавишь - это не каждый додумается до этого. Но у меня такой вот вопрос возник. Как можно сделать следующее: сохранить эту самую страницу на винте, удалить из неё строки <!-- this page saved from url=... и просто получить к ней полный доступ, так как IE будет думать, что я захожу на свою родную страницу. Единственная проблема, я не знаю как это реализовать. Может кто-нибудь подскажет?
0
 Аватар для palva
4278 / 2970 / 693
Регистрация: 08.06.2007
Сообщений: 9,930
Записей в блоге: 5
14.04.2010, 16:48
Если продолжать в том же русле, то можно при помощи FileScriptObject записать html-текст на диск, например таким образом:
Code
1
2
3
4
5
6
7
8
9
10
Set fso = CreateObject('Scripting.FileSystemObject')
Set ie = CreateObject('InternetExplorer.Application')
ie.Visible = True
ie.Navigate('http://www.mail.ru')
Do While ie.busy
 WScript.Sleep 5000
Loop
Set fo = fso.CreateTextFile('file.htm')
fo.WriteLine(ie.document.getElementsByTagName('HTML')(0).outerHTML)
fo.Close
Только для целей перекачивания файла из интернета на диск существуют гораздо более корректные способы.

Непонятно для чего вам это нужно. Если вы хотите обмануть сервер, то это не удастся. При передаче формы всё равно происходит передача урла странички, на которой расположена форма. Поэтому вам придется писать программу, которая общается по http-протоколу с сервером непосредственно, без использования браузера. Там можно будет передать серверу обманный адрес странички.
0
0 / 0 / 0
Регистрация: 14.04.2010
Сообщений: 8
14.04.2010, 17:53
А если сделать так. Вначале сохранить страницу на винт, убрать урл, тем самым получив полный доступ, сделать с ней всё, что нужно и снова вернуть комментарии с урлом. Я попробовал сделать это вручную. Работает. И не нужно обмениваться никакими АшТиТиПи сообщениями, всё делается в Эксплорере
0
86 / 62 / 69
Регистрация: 15.03.2007
Сообщений: 6,903
14.04.2010, 18:32
leonid_t, а чем вам так мешает этот комментарий?
Он никак не влияет на модель безопасности MSIE.
0
 Аватар для palva
4278 / 2970 / 693
Регистрация: 08.06.2007
Сообщений: 9,930
Записей в блоге: 5
14.04.2010, 18:43
Я имел в виду, что урл это не запись в файле, на нее браузер внимания не обращает, а то, что вы видите в строке адреса, когда браузер показывает страничку. Если страничка была получена с вэб сервера, то есть ее урл начинается с http://, то при получении формы сервер может проверить переменную окружения HTTP_REFERER и найти там урл странички. Вот я сейчас попробовал и получил:
Code
1
HTTP_REFERER = http://localhost/hdj.htm
Не важно, что страничка находится на моем диске, главное она получена браузером по http от вэб сервера (который крутится на моем компьютере - localhost). Если же я вызову эту страничку непосредственно с диска, в адресе будет C:/... и так далее, а сервер при посылке формы ответит
Code
1
HTTP_REFERER =
как это ни печально.
0
0 / 0 / 0
Регистрация: 14.04.2010
Сообщений: 8
15.04.2010, 10:48
bazile, эти комментарии играют некоторую роль. Эксплорер на даёт загрузить локальные страницы со страниц, которые сохранены из Инета как раз из-за этих комментариев.
0
 Аватар для palva
4278 / 2970 / 693
Регистрация: 08.06.2007
Сообщений: 9,930
Записей в блоге: 5
15.04.2010, 12:57
И в самом деле! Удивительно.
0
0 / 0 / 0
Регистрация: 14.04.2010
Сообщений: 8
16.04.2010, 11:30
palva, опробовал я твой код, приведённый ниже, ну, с эмуляцией нажатия на клавиши.
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Set sh = CreateObject('WScript.Shell')
Set ie = CreateObject('InternetExplorer.Application')
ie.Visible = Truesh.AppActivate('Microsoft Internet Explorer') ie.Navigate('http://www.mail.ru')
Do While ie.busy 
WScript.Sleep 5000
Loop
ie.document.forms.Auth.Login.value='rarara'
' а теперь установим домейн inbox.ru
ie.document.forms.Auth.Domain.selectedIndex = 1
ie.document.forms.Auth.Login.focus()
WScript.Sleep 100
sh.SendKeys('{Tab}{Tab}tututu')
WScript.Sleep 100
ie.document.forms.Auth.submit()
Do While ie.busy 
WScript.Sleep 5000
Loop
MsgBox('OK')
Но, почему-то этот код неправильно вводит пароль. У меня пароль 8 символов, а он вводит только 4. Я уже и задержки между каждым нажатием пробовал ставить, всё в бестолку. Не подскажешь, в чём тут дело?
0
 Аватар для palva
4278 / 2970 / 693
Регистрация: 08.06.2007
Сообщений: 9,930
Записей в блоге: 5
16.04.2010, 19:17
К сожалению, не могу сказать, в чем дело. Нужно разбираться в натуре. Попробуйте закомментировать всё кроме ввода пароля, а из пароля выкинуть {Tab}{Tab}, тогда ввод будет происходить в поле login, и можно будет увидеть открытые буквы, которые вводятся в качестве пароля. Тогда вы сможете определить символ, на котором спотыкается ввод. Может быть, это какой-нибудь интересный символ, который вызывает переключение активности на другое поле или приложение? В таком случае остаток пароля упадет не по назначению.

Ввод при помощи моделирования клавиатуры - очень капризная штука. Стоит по какой-либо причине переключиться активности, и весь ввод идет мимо цели псу под хвост.
0
 Аватар для palva
4278 / 2970 / 693
Регистрация: 08.06.2007
Сообщений: 9,930
Записей в блоге: 5
16.04.2010, 19:18
Вместо
закомментировать всё кроме ввода пароля
следует читать
закомментировать всё ПОСЛЕ ввода пароля
0
0 / 0 / 0
Регистрация: 07.09.2011
Сообщений: 7
07.09.2011, 10:19
это очень просто.Читайте документацию.
0
3 / 3 / 6
Регистрация: 20.06.2010
Сообщений: 580
07.09.2011, 11:36
может вам поможет xmlHTTP или WinHTTP?
0
0 / 0 / 0
Регистрация: 07.09.2011
Сообщений: 7
08.09.2011, 08:51
Есть такая фигня как DOM(Часть COM)для InternetExplorer.Aplication - там это описано.
0
 Аватар для palva
4278 / 2970 / 693
Регистрация: 08.06.2007
Сообщений: 9,930
Записей в блоге: 5
08.09.2011, 10:12
И что, там можно ввести пароль на чужом сайте и нажать кнопку?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.09.2011, 10:12
Помогаю со студенческими работами здесь

Подключение к своей базе данных на чужом сайте путём добавленного страницы на чужом сайте
Привет! Как сделать &quot;подключаемое приложение&quot;. Большое количество информации хранится в БД. Естественно доступ к БД передавать для...

Заполнить таблицу на чужом сайте данными из файла
В общем суть такая. Есть текстовый файл. Есть чужой сайт. На сайте есть таблица и нужно заполнить таблицу данными из текстового файла.

Заполнить форму на сайте
Надо заполнить форму логин пароль используя введенные в текст бокс слова. Загружаю в webview страницу, где нужно ввести логин\пароль и...

Заполнить форму на сайте
Надо заполнить форму логин пароль используя введенные в текст бокс слова. Загружаю в webview страницу, на которой нужно ввести...

Не получается заполнить форму на сайте
Здравствуйте.Возникла проблема во время заполнения формы на сайте. Комбинация WebBrowser1.OleObject.Document.GetElementById('id...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru