Это мой сценарий, написанный, чтобы очистить данные внутри тега с помощью Nokogiri:скребковые данные Iframe с помощью Nokogiri и рубин
require 'nokogiri'
require 'restclient'
doc = Nokogiri::HTML(RestClient.get("http://www.sample_site.com/"))
doc.xpath('//iframe[@width="1001" and @height="973"]').children
Я получаю так:
=> [#<Nokogiri::XML::Text:0x1913970 "\r\nYour browser does not support inline frames\r\n">]
Может кто-нибудь сказать мне, почему ?
Я подозреваю, что текстовый ответ является результатом встроенной строки, которая буквально говорит «Ваш браузер не поддерживает встроенные кадры» в HTML. Он не динамически генерируется из-за клиента, он всегда присутствует, и когда браузер, поддерживающий iframes, загружает страницу, скрытую контентом. –
Я не говорю, что он динамически генерируется клиентом, просто, что restclient не поддерживает iframe, поэтому он не может загрузить контент. Но громко это указывает! – Alfonso