Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: The Swash en 20 Marzo 2016, 15:30 pm



Título: Qué lenguaje me conviene para trabajar con datos de un sitio web?
Publicado por: The Swash en 20 Marzo 2016, 15:30 pm
Buenas,

Tengo un proyecto donde necesito obtener información de un sitio web que no provee un API, por ende necesito obtener la información mediante peticiones y parsear los datos constantemente.

El sitio básicamente es un mercado en línea, básicamente la interacción sería algo así: App: Web dame los items en venta según X criterios.
Web: item1, item2, ..., itemN
App: selecciona los que le convienen, pujar por X items.

Si se dan cuenta la aplicación estará constantemente haciendo cosas similares a lo anterior y necesito un lenguaje que cumpla con lo siguiente:

  • Buen manejo de concurrencia
  • Buen manejo de datos
  • Soporte de librerías para web requests
  • Tiempo moderado de aprendizaje y desarrollo
  • De preferencia un lenguaje moderno


Me gustaría un lenguaje como Scala, Go o D, pero me gustaría enfatizar en que cada milisegundo es realmente importante para mi aplicación y en lo posible necesito las sugerencias respecto al lenguaje que más me convenga.

Gracias.


Título: Re: Qué lenguaje me conviene para trabajar con datos de un sitio web?
Publicado por: engel lex en 20 Marzo 2016, 15:46 pm
Citar
   Buen manejo de concurrencia
    Buen manejo de datos
    Soporte de librerías para web requests
    Tiempo moderado de aprendizaje y desarrollo
    De preferencia un lenguaje moderno

acabaste de describir el 80% de los lenguajes

-por simplicidad te recomiendo python, tiene librerias muy buenas para web (mechanize, urlib, entre otras) y es muy simple
-por potencia te recomiendo c++, puede que sea un rustico con el tratamiento de strings, pero una vez haces lo que necesitas para analizar las strings, es sumamente potente y puedes facilmente hacerlo multihilo (se llaman threads, podrías lanzar varias revisiones simultaneas sin esperar a otra por terminar) a demás a pesar de nacer en los 80's, es uno de los lenguajes más usados hoy dia por su potencia (no necesariamente un lenguaje porque sea viejo es malo... en este caso es un cuchillo que hemos afilado durante más de 30 años)
-por practicidad te recomiendo javascript, a pesar de ser un lenguaje de navegador, su naturaleza de funcionamiento es orientada a web, así que es uno de los más simples para ello, a punta de peticiones ajax puedes hacer maravillas... si quieres usarlo fuera del navegador tienes nodejs que es un lenguaje interpretado aún más potente y basado en javascript


Título: Re: Qué lenguaje me conviene para trabajar con datos de un sitio web?
Publicado por: #!drvy en 20 Marzo 2016, 19:58 pm
Citar
-por practicidad te recomiendo javascript, a pesar de ser un lenguaje de navegador, su naturaleza de funcionamiento es orientada a web, así que es uno de los más simples para ello, a punta de peticiones ajax puedes hacer maravillas... si quieres usarlo fuera del navegador tienes nodejs que es un lenguaje interpretado aún más potente y basado en javascript

Aclaro: NodeJS es javascript. Node es simplemente un motor basado en el motor javascript de Chrome, que interpreta JS a nivel servidor.

Saludos


Título: Re: Qué lenguaje me conviene para trabajar con datos de un sitio web?
Publicado por: engel lex en 20 Marzo 2016, 23:46 pm
Aclaro: NodeJS es javascript. Node es simplemente un motor basado en el motor javascript de Chrome, que interpreta JS a nivel servidor.

Saludos

gracias por la aclaración! pensé que era basado  :-X


Título: Re: Qué lenguaje me conviene para trabajar con datos de un sitio web?
Publicado por: manute_powa en 20 Marzo 2016, 23:57 pm
Buenas,

Echale un vistazo a CasperJS (PhamtomJS), es una pasada y puedes sacar datos de una web sin tener API ni nada. Que me corrijan si me equivoco, ya que no lo he usado mucho, pero puedes hacer Scraping Web y recopilar información.

Un saludo


Título: Re: Qué lenguaje me conviene para trabajar con datos de un sitio web?
Publicado por: The Swash en 21 Marzo 2016, 03:24 am
Muchas gracias a todos por responder, es cierto que la mayoría de los lenguajes ofrecen eso, la mayoría claro hablamos de lenguajes interpretados o semicompilados. Al parecer me tocará tomar decisiones en base a lo que desee sacrificar, tiempo por rendimiento o viceversa, aunque realmente quería aprovechar para hacer este proyecto en un lenguaje nuevo y moderno como Go, Scala, o D.

Muchas gracias a todos por sus sugerencias y sigo abierto a ellas.


Título: Re: Qué lenguaje me conviene para trabajar con datos de un sitio web?
Publicado por: [u]nsigned en 14 Abril 2016, 18:16 pm
Si el sitio no ofrece API vas a atener que hacer Data Mining (https://es.wikipedia.org/wiki/Miner%C3%ADa_de_datos). Yo para esot simepre uso SimpleHtmlDom para PHP.

http://simplehtmldom.sourceforge.net/

Pero en todo caso te recomiendo que uses el lenguaje que mejor manejas, busca como hacer data mining en ese lenguaje y listo.