Получить размер документа Nokogiri XML - PullRequest
0 голосов
/ 14 августа 2011

Я пытаюсь выяснить, как получить размер XML-документа Nokogiri.Документ извлекается с помощью open:

 Nokogiri::XML(open(my_url))

Можно ли в этот момент определить размер возвращаемого документа?Можно ли извлечь какие-либо HTTP-заголовки, например Content-type или Content-Length?

Ответы [ 2 ]

2 голосов
/ 14 августа 2011

Вы можете попробовать что-то вроде:

opened_url = open(my_url)
opened_url.size # Gets size
doc = Nokogiri::XML(open(my_url))

При проверке «размера» строки вы можете иметь в виду обсуждение этого поста: http://zargony.com/2009/07/24/ruby-1-9-and-file-encodings

2 голосов
/ 14 августа 2011

Не с Нокогири напрямую. Если вы хотите узнать длину содержимого перед загрузкой файла, вы можете сделать что-то вроде этого:

response = http.request_head('http://www.example.com/file.ext')
file_size = response['content-length']

Размер файла будет в байтах.

...