This repository has been archived by the owner on Nov 7, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 6
ache te te pe
rob edited this page Sep 2, 2014
·
1 revision
Tenemos dos métodos que nos ayudan a hacer requests de HTTP y hacer parsing del HTML que nos regrese la cámara.
Con este podemos hacer un request a la vez, y nos regresa el body del request al bloque que le pasemos, por ejemplo:
# encoding: utf-8
require_relative '../common.rb'
request('http://tucongreso.gob.mx/') do |data|
puts data #=> <html><head></head><body><p>Hola, burocracia!</p></body></html>
end
Con este podemos mandarle un array de requests
y un endpoint para ejecutarlos de manera paralela, con un bloque a ejecutarse con cada respuesta, por ejemplo:
# encoding: utf-8
require_relative '../common.rb'
requests = [{id: 1}, {id: 2}]
# {{id}} será remplazado por el key `id ` de cada `requests`
actores = Crawler.new "http://tucongreso.gob.mx/diputados/{{id}}"
actores.requests = requests
actores.run do |response, request|
# Acá sucede la magia, y tenemos a disposición los datos del request y del response
puts request #=> {id: 1, url: "http://tucongreso.gob.mx/diputados/1"}
puts response #=> <html><head></head><body><p>Hola, burocracia!</p></body></html>
end