construir un nodo de n8n para scrapear home y guardar datos en mi base
Budget: $30 – $250 USD
Quiero construir un nodo de n8n para conectar con una base nocodb,verificar si una web esta online, escrapear solo la home y extraer datos del html extraido, actualizando la tabla.
2 TABLAS QUE USAREMOS
Tabla WEB
id,web,status,title,title,field1,field2,etc..
Tabla extra_emails
idweb,emails
-----------------
Nodo 0
Tomar el primer registro y recordar la id
Nodo 1 Verificar si el dominio esta online
Si esta online, Cambiar campo spidering=1 y el nodo -> continua al nodo2
Si no esta online, volver a buscar mediante metodo alternativo con proxies, esta busqueda debe ser mediante proxys o algo seguro, ya que la mayoria de los servidores que busco estan en cloudflare y no quiero ser bloqueado mi ip por scrappear.
Si en este metodo, sigue offline Cambiar campo spidering=1 - Aqui el nodo se detiene y vuelve a empezar al nodo 0
Nodo 2
Descargar el html de la home solamente y almacenarlo en una variable para procesar.
Nodo 3
Analizar, scrapear y guardar los datos obtenidos del index en la misma tabla Web.
- Guardar los metatags, title, description, keywords, en cada campo correspondiente en tabla WEB
- Buscar y guardar numero de whastapp (donde encuentre string wa.me o whastaapp) en cada campo de la tabla - Esto es lo mas importante que debe funcionar en el proceso
- Buscar y guardar numero de telefono que no sea whastapp
- Guardar SOLO el primer email encontrado en campo email. (los restantes encontrados ver nodo4)
-- Si no se encuentra ningun email en el index, guardar en la tabla info@$web
Nodo 4
- todos los otros emails encontrados, agregarlos en tabla extra_emails referenciando el id de a que web pertenece
- Si en el index html hay string con formato de web, agregarla a la tabla Webs con spidering=0 y origendeldato=selfscrapper
Nodo 5
- Hacerme una matriz para que si encuentra tal string en el html, guarde en el campo rubro un resultado (todos separados por comas )
Esta matriz yo puedo agregar nuevos resultados,
por ejemplo si encuentra el termino wp-content -> Wordpress , si encuentra Universidad -> universidad y asi ... yo puedo agregar variables al array (elegir el mejor metodo)
Nodo FINAL
Cambiar en ese id el spidering=22
Volver a empezar.
2 TABLAS QUE USAREMOS
Tabla WEB
id,web,status,title,title,field1,field2,etc..
Tabla extra_emails
idweb,emails
-----------------
Nodo 0
Tomar el primer registro y recordar la id
Nodo 1 Verificar si el dominio esta online
Si esta online, Cambiar campo spidering=1 y el nodo -> continua al nodo2
Si no esta online, volver a buscar mediante metodo alternativo con proxies, esta busqueda debe ser mediante proxys o algo seguro, ya que la mayoria de los servidores que busco estan en cloudflare y no quiero ser bloqueado mi ip por scrappear.
Si en este metodo, sigue offline Cambiar campo spidering=1 - Aqui el nodo se detiene y vuelve a empezar al nodo 0
Nodo 2
Descargar el html de la home solamente y almacenarlo en una variable para procesar.
Nodo 3
Analizar, scrapear y guardar los datos obtenidos del index en la misma tabla Web.
- Guardar los metatags, title, description, keywords, en cada campo correspondiente en tabla WEB
- Buscar y guardar numero de whastapp (donde encuentre string wa.me o whastaapp) en cada campo de la tabla - Esto es lo mas importante que debe funcionar en el proceso
- Buscar y guardar numero de telefono que no sea whastapp
- Guardar SOLO el primer email encontrado en campo email. (los restantes encontrados ver nodo4)
-- Si no se encuentra ningun email en el index, guardar en la tabla info@$web
Nodo 4
- todos los otros emails encontrados, agregarlos en tabla extra_emails referenciando el id de a que web pertenece
- Si en el index html hay string con formato de web, agregarla a la tabla Webs con spidering=0 y origendeldato=selfscrapper
Nodo 5
- Hacerme una matriz para que si encuentra tal string en el html, guarde en el campo rubro un resultado (todos separados por comas )
Esta matriz yo puedo agregar nuevos resultados,
por ejemplo si encuentra el termino wp-content -> Wordpress , si encuentra Universidad -> universidad y asi ... yo puedo agregar variables al array (elegir el mejor metodo)
Nodo FINAL
Cambiar en ese id el spidering=22
Volver a empezar.