¿Cómo evitar ser raspado?

8

Tenemos una base de datos de búsqueda (DB), limitamos los resultados a 15 por página y solo 100 resultados todavía hacen que las personas intenten raspar el sitio.

Estamos prohibiendo sitios que lleguen lo suficientemente rápido. Me preguntaba si hay algo más que podamos hacer. Flash renderizar los resultados tal vez?

Randin
fuente
Asegúrate de que tienes un robots.txt ... sí yo no sé todos los honores .. pero algunos todavía lo hacen
Trent

Respuestas:

6

Podría hacerlo un poco más difícil recuperando los registros a través de AJAX y utilizando una ID de autenticación (como una clave API) para las llamadas AJAX.

Por supuesto, puede evitar esto leyendo la ID y luego haciendo la solicitud AJAX con eso.

Renderizar con Flash es una alternativa como usted señala (aunque todavía no es 100% indescifrable), como lo es renderizar en PDF.

Ivan
fuente
13

Dado que obviamente existe una demanda para su base de datos, ¿ha pensado en darle la vuelta y proporcionar lo que quieren los raspadores? ¿Forma una conexión comercial con los scrapers y fomenta el uso apropiado con una API?

John McC
fuente
1
Sí, me encantan las API
Isaac Waller,
+1 Incluso puede cobrar una pequeña tarifa por el uso de API y hacer algunos pagos de los scrapers convertidos en clientes
Sander Marechal
Sí, configuramos un temporizador y prohibimos si las páginas se golpearon demasiado rápido, en cuanto a vender la información parece poco probable, en el pasado usaban la información para ponerla en otro sitio y obtener ingresos por clic.
Randin
4

No existe una solución tecnológica para evitar que una persona motivada raspe su contenido de acceso público.

Sin embargo, puede proteger legalmente su propiedad intelectual mediante:

  • Asegurarse de que su sitio tenga derechos de autor claramente marcados
  • Publicar Términos de servicio en el pie de página que claramente prohíbe el raspado
  • Considere incorporar una marca de agua digital en todo el contenido de su sitio. ¡No olvide que el texto también puede tener una marca de agua!
Portman
fuente
2

¿Qué tal configurar la autenticación (y quizás el captcha), rastrear el uso y limitar el acceso a cierto número de registros o búsquedas en un período de tiempo determinado?

tomjedrz
fuente
1

Probablemente encontrará que los raspadores mejorarán su rendimiento a medida que aplique diferentes técnicas. ¿Quizás hay una manera de analizar el comportamiento de los usuarios que raspan y presentan un captcha u otra interrupción? Tal vez podría limitar los resultados a un número menor durante un período de tiempo para obligar a los raspadores a esperar 10 días. Si no inician sesión en el medio, ¿asumen que son scapers?

Hagas lo que hagas, asegúrate de mezclar tus técnicas para darles un poco más de longevidad.

Brian Lyttle
fuente
1

Debe tener en cuenta que los raspadores pueden no estar utilizando sus páginas web y formularios, pueden estar llamando a su sitio a un nivel http.

Creo que la mejor solución sería lanzar un catchpa después de que una dirección IP solicite más de un determinado umbral de solicitud.

Sin embargo, debe tener MUCHO cuidado para asegurarse de no afectar la escalabilidad de su aplicación para usuarios reales.

Limitar la cantidad de datos por página como describe en la pregunta solo aumentará la cantidad de solicitudes que los clientes harán contra su servidor.

Bruce McLeod
fuente