¿Cómo puedo eliminar sitios que requieren authentication usando node.js?

He encontrado muchos tutoriales que explican cómo raspar sitios web públicos que no requieren authentication / inicio de session , usando node.js.

¿Alguien puede explicar cómo raspar sitios que requieren iniciar session usando node.js?

Use la biblioteca de request de Mikeal , debe habilitar el soporte de cookies de esta manera:

var request = request.defaults({jar: true}) 

Por lo tanto, primero debe crear un nombre de usuario en ese sitio (manualmente) y pasar el nombre de usuario y la contraseña como parameters al realizar la request POST a ese sitio. Después de eso, el server responderá con una cookie que Request recordará, por lo que podrá acceder a las páginas que requieren que inicie session en ese sitio.

Nota: este enfoque no funciona si se usa algo como reCaptcha en la página de inicio de session.

O usando superagente :

 var superagent = require('superagent') var agent = superagent.agent(); 

agent es entonces un browser persistente, que se encargará de get y establecer cookies, references, etc. Just agent.get , agent.post() como de costumbre.