Ссылка Javascript
VIA
Дата: Вторник, 18.02.2014, 12:38 |
Сообщение № 1
Приветствую! Помогите, пожалуйста. Мне необходимо автоматически забирать данные с интернет страницы, но!!! Нужные данные открываются ссылкой, которая выполняет JavaScript. Это реально сделать посредством VBA и если реально, то как? <TD><A class=Tab2Lnk title="Resource Account Attributes" href='javascript:setValue(document.mainform,"maintabs","_FM_VIEW_ATTRIBUTES");submitCommand(document.mainform, "Recalculate")'>Attributes</A></TD> Заранее благодарю.
Приветствую! Помогите, пожалуйста. Мне необходимо автоматически забирать данные с интернет страницы, но!!! Нужные данные открываются ссылкой, которая выполняет JavaScript. Это реально сделать посредством VBA и если реально, то как? <TD><A class=Tab2Lnk title="Resource Account Attributes" href='javascript:setValue(document.mainform,"maintabs","_FM_VIEW_ATTRIBUTES");submitCommand(document.mainform, "Recalculate")'>Attributes</A></TD> Заранее благодарю. VIA
Ответить
Сообщение Приветствую! Помогите, пожалуйста. Мне необходимо автоматически забирать данные с интернет страницы, но!!! Нужные данные открываются ссылкой, которая выполняет JavaScript. Это реально сделать посредством VBA и если реально, то как? <TD><A class=Tab2Lnk title="Resource Account Attributes" href='javascript:setValue(document.mainform,"maintabs","_FM_VIEW_ATTRIBUTES");submitCommand(document.mainform, "Recalculate")'>Attributes</A></TD> Заранее благодарю. Автор - VIA Дата добавления - 18.02.2014 в 12:38
alex77755
Дата: Вторник, 18.02.2014, 12:51 |
Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 362
Репутация:
64
±
Замечаний:
0% ±
Дал бы адрес сайта и что из него надо взять. Мжет надо сформировать и послать запрос...
Дал бы адрес сайта и что из него надо взять. Мжет надо сформировать и послать запрос... alex77755
Могу помочь в VB6, VBA Alex77755@mail.ru
Ответить
Сообщение Дал бы адрес сайта и что из него надо взять. Мжет надо сформировать и послать запрос... Автор - alex77755 Дата добавления - 18.02.2014 в 12:51
VIA
Дата: Вторник, 18.02.2014, 13:31 |
Сообщение № 3
Сайт внутренний, ссылка на него снаружи к сожалению не работает.
Сайт внутренний, ссылка на него снаружи к сожалению не работает. VIA
Ответить
Сообщение Сайт внутренний, ссылка на него снаружи к сожалению не работает. Автор - VIA Дата добавления - 18.02.2014 в 13:31
alex77755
Дата: Вторник, 18.02.2014, 13:46 |
Сообщение № 4
Группа: Проверенные
Ранг: Обитатель
Сообщений: 362
Репутация:
64
±
Замечаний:
0% ±
Тогда пробуй Fiddler посмотреть запросы, формируй запрос и получай ответ
Тогда пробуй Fiddler посмотреть запросы, формируй запрос и получай ответ alex77755
Могу помочь в VB6, VBA Alex77755@mail.ru
Ответить
Сообщение Тогда пробуй Fiddler посмотреть запросы, формируй запрос и получай ответ Автор - alex77755 Дата добавления - 18.02.2014 в 13:46
VIA
Дата: Вторник, 18.02.2014, 13:49 |
Сообщение № 5
В адресной строке, после открытия сайта, введеный скрипт javascript:setValue(document.mainform,"maintabs","_FM_VIEW_ATTRIBUTES");submitCommand(document.mainform, "Recalculate") тоже выполняется как нужно и формирует необходимую мне страничку. Можно ли "это" отправить запросом в уже открытое окно IE?
В адресной строке, после открытия сайта, введеный скрипт javascript:setValue(document.mainform,"maintabs","_FM_VIEW_ATTRIBUTES");submitCommand(document.mainform, "Recalculate") тоже выполняется как нужно и формирует необходимую мне страничку. Можно ли "это" отправить запросом в уже открытое окно IE? VIA
Ответить
Сообщение В адресной строке, после открытия сайта, введеный скрипт javascript:setValue(document.mainform,"maintabs","_FM_VIEW_ATTRIBUTES");submitCommand(document.mainform, "Recalculate") тоже выполняется как нужно и формирует необходимую мне страничку. Можно ли "это" отправить запросом в уже открытое окно IE? Автор - VIA Дата добавления - 18.02.2014 в 13:49
alex77755
Дата: Вторник, 18.02.2014, 14:05 |
Сообщение № 6
Группа: Проверенные
Ранг: Обитатель
Сообщений: 362
Репутация:
64
±
Замечаний:
0% ±
если в адресной строке, то это уже проще. Кликни по адресной строке и посмотри полный адрес а в процедуру попробуй вставить что-то подобное: [vba]Код
Set WebBrowser = New InternetExplorer WebBrowser.Visible = True URL = "http://----------сюда вставь полный адрес--------------" WebBrowser.Navigate URL T = Now Do While Not (WebBrowser.ReadyState = 4) If Now - T >= 5 / 86400 Then Exit Do 'Выход через 5 секунд DoEvents Loop
[/vba] Откроется нужная страница?
если в адресной строке, то это уже проще. Кликни по адресной строке и посмотри полный адрес а в процедуру попробуй вставить что-то подобное: [vba]Код
Set WebBrowser = New InternetExplorer WebBrowser.Visible = True URL = "http://----------сюда вставь полный адрес--------------" WebBrowser.Navigate URL T = Now Do While Not (WebBrowser.ReadyState = 4) If Now - T >= 5 / 86400 Then Exit Do 'Выход через 5 секунд DoEvents Loop
[/vba] Откроется нужная страница? alex77755
Могу помочь в VB6, VBA Alex77755@mail.ru
Сообщение отредактировал alex77755 - Вторник, 18.02.2014, 14:07
Ответить
Сообщение если в адресной строке, то это уже проще. Кликни по адресной строке и посмотри полный адрес а в процедуру попробуй вставить что-то подобное: [vba]Код
Set WebBrowser = New InternetExplorer WebBrowser.Visible = True URL = "http://----------сюда вставь полный адрес--------------" WebBrowser.Navigate URL T = Now Do While Not (WebBrowser.ReadyState = 4) If Now - T >= 5 / 86400 Then Exit Do 'Выход через 5 секунд DoEvents Loop
[/vba] Откроется нужная страница? Автор - alex77755 Дата добавления - 18.02.2014 в 14:05
VIA
Дата: Вторник, 18.02.2014, 14:53 |
Сообщение № 7
Я непонятно написал выше. Видимый URL всегда https://intranet/account/view.jsp Но если в адресную строку вставить javascript:setValue(document.mainform,"maintabs","_FM_VIEW_ATTRIBUTES");submitCommand(document.mainform, "Recalculate") То все тоже срабатывает.
Я непонятно написал выше. Видимый URL всегда https://intranet/account/view.jsp Но если в адресную строку вставить javascript:setValue(document.mainform,"maintabs","_FM_VIEW_ATTRIBUTES");submitCommand(document.mainform, "Recalculate") То все тоже срабатывает. VIA
Ответить
Сообщение Я непонятно написал выше. Видимый URL всегда https://intranet/account/view.jsp Но если в адресную строку вставить javascript:setValue(document.mainform,"maintabs","_FM_VIEW_ATTRIBUTES");submitCommand(document.mainform, "Recalculate") То все тоже срабатывает. Автор - VIA Дата добавления - 18.02.2014 в 14:53
alex77755
Дата: Вторник, 18.02.2014, 15:20 |
Сообщение № 8
Группа: Проверенные
Ранг: Обитатель
Сообщений: 362
Репутация:
64
±
Замечаний:
0% ±
Понятно. Тогда хуже. Я получал данные функцией [vba]Код
Function GetHTML(URL As String) 'Функция скачивает файл по ссылке URL Dim oXMLHTTP On Error Resume Next Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP") With oXMLHTTP .Open "GET", URL, False .Send GetHTML = .ResponseText End With Set oXMLHTTP = Nothing End Function
[/vba] Но самая большая была в определении строки запроса. В одном случае помог IE. После вставки в строку скрипта и выполнения нужные данные отображены? Тогда попробуй ПКМ по месту с данными и в окошке посмотри Адрес URL Мне он как раз и показал не постоянно отображаемый, а строку запроса.
Понятно. Тогда хуже. Я получал данные функцией [vba]Код
Function GetHTML(URL As String) 'Функция скачивает файл по ссылке URL Dim oXMLHTTP On Error Resume Next Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP") With oXMLHTTP .Open "GET", URL, False .Send GetHTML = .ResponseText End With Set oXMLHTTP = Nothing End Function
[/vba] Но самая большая была в определении строки запроса. В одном случае помог IE. После вставки в строку скрипта и выполнения нужные данные отображены? Тогда попробуй ПКМ по месту с данными и в окошке посмотри Адрес URL Мне он как раз и показал не постоянно отображаемый, а строку запроса. alex77755
Могу помочь в VB6, VBA Alex77755@mail.ru
Ответить
Сообщение Понятно. Тогда хуже. Я получал данные функцией [vba]Код
Function GetHTML(URL As String) 'Функция скачивает файл по ссылке URL Dim oXMLHTTP On Error Resume Next Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP") With oXMLHTTP .Open "GET", URL, False .Send GetHTML = .ResponseText End With Set oXMLHTTP = Nothing End Function
[/vba] Но самая большая была в определении строки запроса. В одном случае помог IE. После вставки в строку скрипта и выполнения нужные данные отображены? Тогда попробуй ПКМ по месту с данными и в окошке посмотри Адрес URL Мне он как раз и показал не постоянно отображаемый, а строку запроса. Автор - alex77755 Дата добавления - 18.02.2014 в 15:20
VIA
Дата: Вторник, 18.02.2014, 18:01 |
Сообщение № 9
Функция выдает кусок HTML кода. Копирование через ПКМ, как и в строке отображения: javascript:setValue(document.mainform,"maintabs","_FM_VIEW_ATTRIBUTES");submitCommand(document.mainform, "Recalculate")
Функция выдает кусок HTML кода. Копирование через ПКМ, как и в строке отображения: javascript:setValue(document.mainform,"maintabs","_FM_VIEW_ATTRIBUTES");submitCommand(document.mainform, "Recalculate") VIA
Ответить
Сообщение Функция выдает кусок HTML кода. Копирование через ПКМ, как и в строке отображения: javascript:setValue(document.mainform,"maintabs","_FM_VIEW_ATTRIBUTES");submitCommand(document.mainform, "Recalculate") Автор - VIA Дата добавления - 18.02.2014 в 18:01
alex77755
Дата: Вторник, 18.02.2014, 18:15 |
Сообщение № 10
Группа: Проверенные
Ранг: Обитатель
Сообщений: 362
Репутация:
64
±
Замечаний:
0% ±
Всё правильно. Так и должно быть. Есть ли в куске кода нужные вам данные?
Всё правильно. Так и должно быть. Есть ли в куске кода нужные вам данные? alex77755
Могу помочь в VB6, VBA Alex77755@mail.ru
Сообщение отредактировал alex77755 - Вторник, 18.02.2014, 18:16
Ответить
Сообщение Всё правильно. Так и должно быть. Есть ли в куске кода нужные вам данные? Автор - alex77755 Дата добавления - 18.02.2014 в 18:15
alex77755
Дата: Вторник, 18.02.2014, 18:36 |
Сообщение № 11
Группа: Проверенные
Ранг: Обитатель
Сообщений: 362
Репутация:
64
±
Замечаний:
0% ±
Если есть - парсить HTML код.
Могу помочь в VB6, VBA Alex77755@mail.ru
Ответить
Сообщение Если есть - парсить HTML код. Автор - alex77755 Дата добавления - 18.02.2014 в 18:36
doober
Дата: Вторник, 18.02.2014, 19:49 |
Сообщение № 12
Группа: Друзья
Ранг: Ветеран
Сообщений: 947
Репутация:
323
±
Замечаний:
0% ±
Excel 2010
Нужные данные открываются ссылкой, которая выполняет JavaScript. Это реально сделать посредством VBA и если реально, то как?
Реально,если URL не секретный
Нужные данные открываются ссылкой, которая выполняет JavaScript. Это реально сделать посредством VBA и если реально, то как?
Реально,если URL не секретныйdoober
Ответить
Сообщение Нужные данные открываются ссылкой, которая выполняет JavaScript. Это реально сделать посредством VBA и если реально, то как?
Реально,если URL не секретныйАвтор - doober Дата добавления - 18.02.2014 в 19:49
VIA
Дата: Среда, 19.02.2014, 09:21 |
Сообщение № 13
нет нужных данных в HTML - это начальная страница.
нет нужных данных в HTML - это начальная страница. VIA
Ответить
Сообщение нет нужных данных в HTML - это начальная страница. Автор - VIA Дата добавления - 19.02.2014 в 09:21
doober
Дата: Среда, 19.02.2014, 12:02 |
Сообщение № 14
Группа: Друзья
Ранг: Ветеран
Сообщений: 947
Репутация:
323
±
Замечаний:
0% ±
Excel 2010
нет нужных данных в HTML - это начальная страница.
Это для вас нет,для меня есть. Если вы не дадите адрес начальной страницы,то и разговаривать больше не о чем.
нет нужных данных в HTML - это начальная страница.
Это для вас нет,для меня есть. Если вы не дадите адрес начальной страницы,то и разговаривать больше не о чем.doober
Ответить
Сообщение нет нужных данных в HTML - это начальная страница.
Это для вас нет,для меня есть. Если вы не дадите адрес начальной страницы,то и разговаривать больше не о чем.Автор - doober Дата добавления - 19.02.2014 в 12:02
VIA
Дата: Среда, 19.02.2014, 14:28 |
Сообщение № 15
Про отсутствие нужных данных в HTML - это я alex77755 писал. Про адрес начальной страницы повторюсь - это intranet, снаружи не работает.
Про отсутствие нужных данных в HTML - это я alex77755 писал. Про адрес начальной страницы повторюсь - это intranet, снаружи не работает. VIA
Ответить
Сообщение Про отсутствие нужных данных в HTML - это я alex77755 писал. Про адрес начальной страницы повторюсь - это intranet, снаружи не работает. Автор - VIA Дата добавления - 19.02.2014 в 14:28
doober
Дата: Среда, 19.02.2014, 14:38 |
Сообщение № 16
Группа: Друзья
Ранг: Ветеран
Сообщений: 947
Репутация:
323
±
Замечаний:
0% ±
Excel 2010
Есть такой вариант. Запускаете фидлера .Выполняете все манипуляции в браузере.Сохраняете все сессии фидлера в архив. И мне на мыло.
Есть такой вариант. Запускаете фидлера .Выполняете все манипуляции в браузере.Сохраняете все сессии фидлера в архив. И мне на мыло. doober
Ответить
Сообщение Есть такой вариант. Запускаете фидлера .Выполняете все манипуляции в браузере.Сохраняете все сессии фидлера в архив. И мне на мыло. Автор - doober Дата добавления - 19.02.2014 в 14:38
SkyPro
Дата: Среда, 19.02.2014, 14:57 |
Сообщение № 17
Группа: Друзья
Ранг: Старожил
Сообщений: 1206
Репутация:
255
±
Замечаний:
0% ±
2010
Я бы порекомендовал подобные вещи делать через ПХП. Вот пример небольшой, как при помощи cURL отправить хедеры и получить ответ. [vba]Код
function curl_get($url){ $ch = curl_init(); curl_setopt($ch, CURLOPT_REFERER, 'http://САЙТ.com/'); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36 OPR/18.0.1284.68"); curl_setopt($ch, CURLOPT_URL, $url ); // отправляем на curl_setopt($ch, CURLOPT_HEADER, 0); // не отображать заголовки ответа curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // возвратить то что вернул сервер //curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // следовать за редиректами curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);// таймаут curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);// просто отключаем проверку сертификата curl_setopt($ch, CURLOPT_POST, 1); // использовать данные в post curl_setopt($ch, CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT'].'/cookie.txt'); curl_setopt($ch, CURLOPT_POSTFIELDS, array( 'sort_by'=>'a', 'roomname'=>'login', 'private'=>false)); // массивом передаются данные формы (если доступ только для авторизирвоанных пользователей) $result=curl_exec($ch); return $result; curl_close($ch); }; $url = 'http://URL на который отправляются хедеры'; $result = curl_get($url); echo $result;
[/vba]
Я бы порекомендовал подобные вещи делать через ПХП. Вот пример небольшой, как при помощи cURL отправить хедеры и получить ответ. [vba]Код
function curl_get($url){ $ch = curl_init(); curl_setopt($ch, CURLOPT_REFERER, 'http://САЙТ.com/'); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36 OPR/18.0.1284.68"); curl_setopt($ch, CURLOPT_URL, $url ); // отправляем на curl_setopt($ch, CURLOPT_HEADER, 0); // не отображать заголовки ответа curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // возвратить то что вернул сервер //curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // следовать за редиректами curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);// таймаут curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);// просто отключаем проверку сертификата curl_setopt($ch, CURLOPT_POST, 1); // использовать данные в post curl_setopt($ch, CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT'].'/cookie.txt'); curl_setopt($ch, CURLOPT_POSTFIELDS, array( 'sort_by'=>'a', 'roomname'=>'login', 'private'=>false)); // массивом передаются данные формы (если доступ только для авторизирвоанных пользователей) $result=curl_exec($ch); return $result; curl_close($ch); }; $url = 'http://URL на который отправляются хедеры'; $result = curl_get($url); echo $result;
[/vba] SkyPro
skypro1111@gmail.com
Ответить
Сообщение Я бы порекомендовал подобные вещи делать через ПХП. Вот пример небольшой, как при помощи cURL отправить хедеры и получить ответ. [vba]Код
function curl_get($url){ $ch = curl_init(); curl_setopt($ch, CURLOPT_REFERER, 'http://САЙТ.com/'); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36 OPR/18.0.1284.68"); curl_setopt($ch, CURLOPT_URL, $url ); // отправляем на curl_setopt($ch, CURLOPT_HEADER, 0); // не отображать заголовки ответа curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // возвратить то что вернул сервер //curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // следовать за редиректами curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);// таймаут curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);// просто отключаем проверку сертификата curl_setopt($ch, CURLOPT_POST, 1); // использовать данные в post curl_setopt($ch, CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT'].'/cookie.txt'); curl_setopt($ch, CURLOPT_POSTFIELDS, array( 'sort_by'=>'a', 'roomname'=>'login', 'private'=>false)); // массивом передаются данные формы (если доступ только для авторизирвоанных пользователей) $result=curl_exec($ch); return $result; curl_close($ch); }; $url = 'http://URL на который отправляются хедеры'; $result = curl_get($url); echo $result;
[/vba] Автор - SkyPro Дата добавления - 19.02.2014 в 14:57
VIA
Дата: Среда, 19.02.2014, 16:10 |
Сообщение № 18
:))) Не могу фидлера поставить, прав администраторских нет. А потом уверен, что антивирус взвижжит. Беда в общем... Про PHP не очень понял куда его и как Я думал все как-то проще: 1. открыть браузер с нужным урлом 2. послать в строку запроса вместо урла javascript 3. спарсить открывшуюся страничку Но понимаю, что пункт 2 вероятно невыполним. По крайней мере средствами VBA
:))) Не могу фидлера поставить, прав администраторских нет. А потом уверен, что антивирус взвижжит. Беда в общем... Про PHP не очень понял куда его и как Я думал все как-то проще: 1. открыть браузер с нужным урлом 2. послать в строку запроса вместо урла javascript 3. спарсить открывшуюся страничку Но понимаю, что пункт 2 вероятно невыполним. По крайней мере средствами VBA VIA
Ответить
Сообщение :))) Не могу фидлера поставить, прав администраторских нет. А потом уверен, что антивирус взвижжит. Беда в общем... Про PHP не очень понял куда его и как Я думал все как-то проще: 1. открыть браузер с нужным урлом 2. послать в строку запроса вместо урла javascript 3. спарсить открывшуюся страничку Но понимаю, что пункт 2 вероятно невыполним. По крайней мере средствами VBA Автор - VIA Дата добавления - 19.02.2014 в 16:10
doober
Дата: Среда, 19.02.2014, 17:44 |
Сообщение № 19
Группа: Друзья
Ранг: Ветеран
Сообщений: 947
Репутация:
323
±
Замечаний:
0% ±
Excel 2010
Скайпа естественно нет?. Накрыться черным одеялом,скачать портабле версию TeamViewer. я тихонько,что бы другие не видели ,зайду на комп и помогу вам
Скайпа естественно нет?. Накрыться черным одеялом,скачать портабле версию TeamViewer. я тихонько,что бы другие не видели ,зайду на комп и помогу вам doober
Ответить
Сообщение Скайпа естественно нет?. Накрыться черным одеялом,скачать портабле версию TeamViewer. я тихонько,что бы другие не видели ,зайду на комп и помогу вам Автор - doober Дата добавления - 19.02.2014 в 17:44
VIA
Дата: Четверг, 20.02.2014, 09:11 |
Сообщение № 20
Скайп можно и с телефона запустить. Чем это поможет? Тимвьювер запустить не смог, не видит интернета. Сейчас зарегистрируюсь, выложу HTML, хотя исполняющий кусок выкладывал в первом посте.
Скайп можно и с телефона запустить. Чем это поможет? Тимвьювер запустить не смог, не видит интернета. Сейчас зарегистрируюсь, выложу HTML, хотя исполняющий кусок выкладывал в первом посте. VIA
Ответить
Сообщение Скайп можно и с телефона запустить. Чем это поможет? Тимвьювер запустить не смог, не видит интернета. Сейчас зарегистрируюсь, выложу HTML, хотя исполняющий кусок выкладывал в первом посте. Автор - VIA Дата добавления - 20.02.2014 в 09:11