Buenas , una consulta estamos pasando una pagina de php a ruby on rails se trata sobre una comunidad financiera , que muestra los datos de diferentes empresas y para ello extrae datos de otras paginas web , por ejemplo la empresa ALICOR , algunos de sus datos se encuentran aqui :
http://www.bvl.com.pe/jsp/cotizacion.jsp?fec_inicio=20130120&fec_fin=2013020 1&nemonico=ALICORC1
El objetivo del sitio es básicamente extraer datos de otra pagina web mediante esas funciones en php , guardarlas en la base de datos y mostrarlas en la pagina web del proyecto .Ademas , tambien puede mostrar defrente en la web.
Algunas funciones de php que emplean son (file_get_contents,explode, preg_match_all) , basicamente mi problema esta en la forma que esta hecho el algoritmo para extraer datos ya que lo hizo otra persona.
Aqui hay un fragmento de la web :
$bloomberg = file_get_contents("http://www.bloomberg.com/quote/$busqueda"); // Cambiar URI a http://www.bloomberg.com/quote/
$obtenerBloomberg = explode('<span class=" price">', $bloomberg);
$obtenerBloomberg = explode('<span> ',$obtenerBloomberg[1]);
$precio = trim(strip_tags($obtenerBloomberg[0]));
$moneda = explode('</span>', $obtenerBloomberg[1]);
$moneda = trim(strip_tags($moneda[0]));
if($moneda == ""){
$moneda = "-";
}
$variacion = explode('<span class=" trending_', $bloomberg);
$variacion = explode('<span>', $variacion[1]);
$variacionPorcentual = explode('</span>', $variacion[1]);
$variacionPorcentual = trim(strip_tags($variacionPorcentual[0]));
$variacion = trim(strip_tags($variacion[0]));
$direccion = explode(' ', $variacion);
$direccion = trim($direccion[0]);
$variacion = explode('>', $variacion);
$variacion = trim(strip_tags($variacion[1]));
$open = preg_match_all('/<th>Open:<\/th>\n(.*)<td>(.*)<\/td>/', $bloomberg, $resul);
$open = $resul[2][0];
$daysRange = preg_match_all('/<th>Day\'s Range:<\/th>\n(.*)<td>(.*)<\/td>/', $bloomberg, $resul);
$daysRange = $resul[2][0];
$volume = preg_match_all('/<th>Volume:<\/th>\n(.*)<td>(.*)<\/td>/', $bloomberg, $resul);
$volume = $resul[2][0];
$bid = preg_match_all('/<th class="last">Bid:<\/th>\n(.*)<td class="last">(.*)<\/td>/', $bloomberg, $resul);
$bid = $resul[2][0];
$prevClose = preg_match_all('/<th>Previous Close:<\/th>\n(.*)<td>(.*)<\/td>/', $bloomberg, $resul);
$prevClose = $resul[2][0];
$week52 = preg_match_all('/<th>52wk Range:<\/th>\n(.*)<td>(.*)<\/td>/', $bloomberg, $resul);
$week52 = $resul[2][0];
$year1RTN = preg_match_all('/<th>1-Yr Rtn:<\/th>\n(.*)<td class="(.*)">(.*)<\/td>/', $bloomberg, $resul);
$year1RTN = $resul[3][0];
$year1RTNDireccion = $resul[2][0];
$ask = preg_match_all('/<th class="last">Ask:<\/th>\n(.*)<td class="last">(.*)<\/td>/', $bloomberg, $resul);
$ask = $resul[2][0];
He visto esta pagina http://www.phptoruby.com/ , hay te explica la función ( file_get_contents ) en ruby pero no se como implementarlo.
Entonces , quisiera saber si hay algo en ruby que me facilite a realizar esto , algunos tips , consejos o que gemas puedo emplear.
Gracias.