|
v7: Запуск веб страницы с последующим закрытием | ☑ | ||
---|---|---|---|---|
0
КофеIN
19.06.12
✎
14:02
|
День добрый, вот уже 2 дня бьюсь с казалось бы простой задачей, суть вот в чем нужно открыть веб страницу дождаться оканчания загрузки и закрыть браузер.
пробовал так: СтрокаЗапуска = """C:\Program Files (x86)\Internet Explorer\IEXPLORE.EXE"" http://www.mail.ru/"""; WshShell = CreateObject("WScript.Shell"); WshShell.Run(СтрокаЗапуска,1,0); WshShell.SendKeys ("%{F4}"); в таком варианте открывает ссылку и все 1с стоит на месте, при закрытии браузера идет дальше. Пробовал ещё так: КомандаСистемы("start IEXPLORE www.google.ru"); но в тогда не знаю как закрыть браузер. |
|||
1
КофеIN
19.06.12
✎
14:04
|
СтрокаЗапуска = """C:\Program Files (x86)\Internet Explorer\IEXPLORE.EXE"" http://www.mail.ru/""";
WshShell = CreateObject("WScript.Shell"); WshShell.Run(СтрокаЗапуска,1,0); WshShell.SendKeys ("%{F4}"); |
|||
2
КофеIN
19.06.12
✎
14:04
|
СтрокаЗапуска = """C:\Program Files (x86)\Internet Explorer\IEXPLORE.EXE"" http://www.mail.ru/""";WshShell = CreateObject("WScript.Shell");
WshShell.Run(СтрокаЗапуска,1,0); WshShell.SendKeys ("%{F4}"); |
|||
3
Юрий Лазаренко
19.06.12
✎
14:05
|
(0) Покури javascript. Там есть событие document.onload(), в нем можно яваскриптом закрыть окно браузера.
|
|||
4
КофеIN
19.06.12
✎
14:05
|
Пробовал Run и с ожиданием оканчания тот же эффект
|
|||
5
andrewks
19.06.12
✎
14:06
|
OLE
|
|||
6
КофеIN
19.06.12
✎
14:12
|
в javascript не особо понимаю, былоб идеально мой первый вариант до ума довести, может кто уже имел дело с таким помогите.
|
|||
7
oleg_prg
19.06.12
✎
14:35
|
Пробуй так
СтрокаЗапуска = """C:\Program Files (x86)\Internet Explorer\IEXPLORE.EXE"" "http://www.mail.ru/" target="_blank" ref="nofollow" class="extralink">http://www.mail.ru/"""; WshShell = CreateObject("WScript.Shell"); WshShell.Run(СтрокаЗапуска,1,0); WshShell.Sleep(5000); //Это задержка в 5 сек для того чтобы браузер успел загрузить страницу, //без этого открывается браузер, и сразу же получает команду закрыться, еще не загрузив HTML :) WshShell.SendKeys ("%{F4}"); |
|||
8
oleg_prg
19.06.12
✎
14:37
|
Если используешь КомандаСистемы("start IEXPLORE www.google.ru");
то для закрытия используй КомандаСистемы("taskkill /F /im iexplorer.exe"); Но опять же не забывай про задержку перед завершением процесса |
|||
9
КофеIN
19.06.12
✎
14:39
|
Sleep 1c вообще отвергает пишет ошибка.
В том то и дело что он не закрывается, просто висит открытый браузер. |
|||
10
КофеIN
19.06.12
✎
14:40
|
складывается очучение что WshShell висит не на браузере а на 1с.
|
|||
11
КофеIN
19.06.12
✎
14:41
|
oleg_prg а если так(с ожиданием):
КомандаСистемы("start /wait IEXPLORE www.google.ru"); КомандаСистемы("taskkill /F /im iexplorer.exe"); |
|||
12
oleg_prg
19.06.12
✎
14:43
|
Тебе надо получить WEB страницу на диск компа?
|
|||
13
oleg_prg
19.06.12
✎
14:44
|
для чего открывать и сразу закрывать?
|
|||
14
КофеIN
19.06.12
✎
14:45
|
при открытии начинается отрабатывать скрипт, мне надо дождаться пока он отработает
|
|||
15
КофеIN
19.06.12
✎
14:46
|
с wait не работает, без него работает
|
|||
16
oleg_prg
19.06.12
✎
14:49
|
Вместо задержки делай так
Для А = 1 По 100 000 Цикл //Так я делаю задержку А = А; //сюда нипиши какой нибудь код который Спр = СоздатьОбъект("Справочник.Номенклатура"); Спр.ВЫбратьЭлементы(); Пока Спр.ПолучитьЭлемент() = 1 Цикл А = А; КонецЦикла; КонецЦикла; Могу скинуть обработку которая получает готовый код страницы со всеми фотками и прочими объектами и выводит нужные данные в 1С. Это называется парсинг сайтов |
|||
17
Junior1s
19.06.12
✎
14:52
|
(16) что это ?!?!?!
|
|||
18
КофеIN
19.06.12
✎
14:52
|
а в этой обработке есть определение конца загрузки станицы?
|
|||
19
oleg_prg
19.06.12
✎
14:53
|
А можешь описать задачу, для чего тебе надо открыть, а потом закрыть браузер?
|
|||
20
oleg_prg
19.06.12
✎
14:53
|
17 Это вместо задержки :)
|
|||
21
dk
19.06.12
✎
14:54
|
(16) плохой пример задержки через нагрузку системы
лучше через ввестистроку - без нагрузки |
|||
22
oleg_prg
19.06.12
✎
14:55
|
http://files.mail.ru/2TXR01 Вот ссылка на мою обработку - она в 1С загружает каталог сотовых телефонов с сайта. Загружается модель и краткое описание + фотку. Этой обработкой можно из инета читать любае данные
|
|||
23
КофеIN
19.06.12
✎
14:57
|
суть такая: формирую файлы, выкладываю на ФТП, потом запускаю скрипт, чтобы он загрузил файлы.
Скрипт работает какое то время(время не известно). Загвоздка в определении конца отработки скрипта и закрытии браузера. |
|||
24
oleg_prg
19.06.12
✎
14:57
|
Я подумал что может твою задачу можно решить другим путем, с помощью моей обработки. Если все ок, то отпишись, если нет, то опиши свою задачу, мот че нибудь придумаем
|
|||
25
Jaap Vduul
19.06.12
✎
14:57
|
||||
26
oleg_prg
19.06.12
✎
14:58
|
Значит обработка подойдет :)
|
|||
27
FN
19.06.12
✎
15:31
|
(0)
IE=СоздатьОбъект("InternetExplorer.Application"); IE.Navigate("www.mista.ru"); Пока IE.readyState<4 Цикл Состояние("загрузка"); КонецЦикла; Состояние("загружено"); хотя учитывая (23) кажется ты что-то пытаешься сделать не совсем верно. |
|||
28
КофеIN
19.06.12
✎
15:37
|
Сделал так, все работает, УРА!!! всем спасибо что откликнулись, особая благодарность Jaap Vduul
IE = CreateObject("InternetExplorer.Application"); IE.Visible = 1; IE.Navigate("www.mail.ru"); й =-1; Пока й = -1 Цикл й = IE.Busy; КонецЦикла; IE.Quit(); |
|||
29
Юрий Лазаренко
19.06.12
✎
15:41
|
(28) Хорошее решение
|
|||
30
smaharbA
19.06.12
✎
15:54
|
ЗапуститьПриложение("mshta ""about:<hta:application windowstate='maximize' navigable='yes'><script>var x=window.open('http://www.yandex.ru','_blank');x.focus();window.setInterval(function(){x.focus();if((d=x.document) && (b=d.body) && (b.innerText)) {document.write(b.innerText);x.close()}},100);</script>""")
|
|||
31
smaharbA
19.06.12
✎
15:58
|
(30) может работать и без мхта
|
|||
32
smaharbA
19.06.12
✎
16:31
|
наверное как то так
|
|||
33
smaharbA
19.06.12
✎
16:37
|
Асмоди когда выкинешь бред автозамены ссылок ?!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |