Загрузка веб-страницы

Ruby:
Загрузка веб-страницы

Как это сделать:

Ruby делает скачивание веб-страницы простым с помощью библиотек вроде net/http и гемов, таких как open-uri. Вот как это сделать используя net/http:

require 'net/http'
require 'uri'

url = URI.parse('http://example.com')
response = Net::HTTP.get_response(url)

puts response.body if response.is_a?(Net::HTTPSuccess)

Вы получите HTML-содержимое http://example.com на печать.

Использование open-uri еще проще:

require 'open-uri'

downloaded_page = URI.open('http://example.com').read
puts downloaded_page

Опять же, содержимое веб-страницы отобразится в вашем терминале.

Глубже

В старые времена интернета, скачивание страницы было немного более трудоемким и включало ручное создание HTTP-запросов. Сегодня Ruby значительно упрощает эту сложность.

Альтернативы net/http и open-uri включают более высокоуровневые гемы вроде HTTParty и RestClient. Они предлагают больше функций и объектно-ориентированный подход. Для серьезного веб-скрапинга многие рубисты обращаются к Nokogiri для разбора HTML или к Mechanize, который действует как веб-браузер.

С точки зрения реализации, имейте в виду, что open-uri является оберткой для net/http, поэтому он довольно удобен, но может не иметь некоторого низкоуровневого контроля. net/http дает вам больше контроля над запросом, но может быть многословным для простых задач.

Смотрите также

Для дальнейшего чтения и дополнительных ресурсов обратите внимание на: