2015-11-08 2 views
0

Я пишу некоторые выскабливание скрипт на casperjs/phantomjs и пытается получить HTML от одного из goodle теги объявлений Iframe и получать ошибкиПолучить HTML от фрейма - «не удалось прочитать contentDocument» ошибка

Код:

iframe_node = $('iframe').contents().find('iframe[name^="google_ads_frame"]')[0] 
html = a.contentDocument.body.innerHTML 

Ошибка:

Uncaught DOMException: Failed to read the 'contentDocument' property from 'HTMLIFrameElement': 
Blocked a frame with origin "http://example.com" from accessing a cross-origin frame.(…) 
+1

Вы можете изменить контекст на iframe из CasperJS, например [this] (http://stackoverflow.com/a/14154214/1816580) и получить содержимое из 'casper.getHTML()' –

ответ

0

Попробуйте изменить следующие переменные для веб-безопасности, SSL-ошибок, и SSL-протокола:

casperjs --web-security=false --ignore-ssl-errors=true --ssl-protocol=any <your_script>.js 

Вы не можете получить доступ к кадрам с перекрестным началом, не изменяя эти переменные из-за настроек безопасности. Это должно позволить вам вводить кадры и захватывать необходимый контент.

Смежные вопросы