![]() |
The requested action with this object has failed.:
прога:
берет и экселя значение ссылки , переходит по ней, кликает кнопку "показать номер", копирует значение ссылки, вставляет в ексель, копирует поле с класом person-name , вставляет в ексель. все просто, но ! PHP код:
иногда выпадает ошибка The requested action with this object has failed.: $tags = $oIE.document.GetElementsByTagName("div") $tags = $oIE.document^ ERROR >Exit code: 1 Time: 180.9 и не понятна причина. уже голову сломал :( |
интересно посмотреть, а links.xlsx файла нет для примера?
|
Вложений: 1
есть, вот
|
Вложений: 1
вот
|
ой, продублировал :(
|
Попробуйте этот вариант, поставил разные проверки..
А конкретно Ваша ошибка $tags = $oIE.document.GetElementsByTagName("div") $tags = $oIE.document^ ERROR из-за того что oIE.document не был открыт или с ошибкой ( нет страницы например) можно еще проверять $oIE на то, что он - объект... Код
Код:
|
спасибо.
но теперь это : PHP код:
может можно какую-то проверку добавить перед $oIE.document.GetElementsByTagName("div") ? добавил if IsObj($oIE) Then ... не помогло :( |
Вложений: 1
файл links побольше
|
Вот попробуй такой вариант.
до 100 пробовал, норм. Скрытый текст
PHP код:
|
PHP код:
если убрать ConsoleWrite ( $i & ' ' & $oExcel.Activesheet.Cells($i, 1).Value & @LF) , то ошибка дальше в $link = $oExcel.Activesheet.Cells($i, 1).Value что-то все же с $oExcel.Activesheet.Cells($i, 1).Value. может переполняется какая-то память ? какую бы проверку пихнуть туда.ю чтобы в случае ошибки там, он просто проходил дальше. :unsure: |
Цитата:
Соответственно можно поставить дополнительно перед записью в ячейку проверку If not IsObj($oExcel) Then ... Вообще перед запуском скрипта нужно проверить чтобы процессы excel.exe и iexplore.exe были закрыты, снять их в диспетчере задач. Тогда ошибок не должно быть никаких. PS: еще в начале главного цикла все таки нужен таймаут )) , сайт может блокирнуть временно по IP если слишком часто идут запросы: PHP код:
|
Окончательный вариант скрипта:
Скрытый текст
PHP код:
Убрал постоянное открытие закрытие IE, заменил на открытие ссылки в том же окне, добавил переоткрытие в случае ошибки/зависона. Таймауты можно наверное переделать, но это уже не суть. ЗЫ: Вообще IE неуклюжий монстр.. |
подправил скрипт выше.
|
нды. видимо проблему у меня.
The requested action with this object has failed.: $tags = $oIE.document.GetElementsByTagName("div") $tags = $oIE.document^ ERROR а какая у вас ОС на компьютере и какой Internet Explorer можно поинтересоваться ? :( |
Win 10 (10576) 32x, IE 11
у Вас ошибки все связаны с отсутствием объекта, в данном случае $oIE, может он слетает? Могу посоветовать одновременно с выполнением скрипта просмотреть в диспетчере задач поведение IE. |
да. Нужно разобраться с поведением IE.
Спасибо за вашу помощь :up , доберусь до этой проблемы после выходных. Сюда отпишусь. |
Все работает... правда у меня тоже стоит вин 10 32х, но все работает )
Думаю проблема была в разрядности IE. он похоже путался когда какой запускать. спасибо за помощь! |
Время: 09:03. |
Время: 09:03.
© OSzone.net 2001-