Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   получить код iframe (https://javascript.ru/forum/events/61854-poluchit-kod-iframe.html)

arahmanov 12.03.2016 05:00

получить код iframe
 
Задача забрать с грабить таблицу с сайта.

есть iframe в него подгружаю страничку. На данной станице есть кнопка по нажатию на которую открывается интересующая меня информация.

проверяю наличие кнопки и если есть клик.
var ppp = document.getElementById("InlineFrame1").contentWindow.document.getElementById("repClientCredits_btnShowCreditPayTable_0");
if(!ppp){ppp = ""} else
{document.getElementById("Inline Frame1").contentWindow.document.getElementById("re pClientCredits_btnShowCreditPayTable_0").click();

информация появилась далее пробою

1) пошел сложным путем
проверять наличие каждой строки блога id разные
var t0 = document.getElementById("InlineFrame1").contentWindow.document.getElementById("repCreditPayments_tr_0");

if(!t0){t0 = ""} else {t0 = document.getElementById("InlineFrame1").contentWindow.document.getElementById("repCreditPayments_tr_0").innerHTML;}


работает но кривоватенько. строк много и как говориться хорошая мысля приходит позже.

попробовал забрать код iframe.innerHTML
Видны заголовки и куча javascript таблиц нету %(

Бросил эту затею пошел в php cURL

пробую так
$ch = curl_init();  
curl_setopt($ch, CURLOPT_URL, 'http://ххххххх/ClientDetails.aspx?cid=508'); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
$result = curl_exec($ch); 
curl_close($ch);

echo  $result;


все супер, вся страница у меня кроме той части которая появляеться по нажатию на кнопку!

Вопрос: как соединить две мои мысли.
1) Через iframe нажав на кнопку после через cURL забрать страничку ( нужно видимо как-то к iframe обратиться ?

Deff 12.03.2016 19:22

arahmanov,
Отправить аякс-запрос на ваш сервер ссылкой вида
http://mycite.com/proxi.php?~http://ххххххх/ClientDetails.aspx?cid=508
И получить код страницы https://learn.javascript.ru/ajax-intro


Часовой пояс GMT +3, время: 06:03.