¿Cuál es el mejor framework de raspado web para Python?

Gracias Sanjay por el A2A.

En primer lugar, muy pocas personas tienen experiencia en la construcción de sistemas de archivo web . Por lo tanto, no lea las respuestas descaradas y déjese atrapar por ellas.

Para responder a la pregunta, no necesita ningún marco para el raspado web. Conmocionado !! Aquí es cómo:

  de urllib.request import urlopen
 Solicitud de importación de urllib.request
 de subprocesos subproceso de importación
 desde bs4 import BeautifulSoup


 def get_links (solicitud):
     html = urlopen (solicitud)
     sopa = BeautifulSoup (html.read (), "lxml")
     print (soup.find_all ("a"))


 clase Crawler:
     def __init __ (self, urls = ()):
         self.urls = urls

     def crawl_and_store_html (self):
         si self.urls:
             para url en self.urls:
                 si url:
                     solicitud = Solicitud (url)
                     thread = Thread (target = get_links, args = (request,))
                     thread.start ()


 if __name__ == "__main__":
     c = Rastreador (URL = ["http://www.amazon.in/gp/aw"])
     c.crawl_and_store_html ()

El fragmento de código anterior podría rastrear cualquier página web y obtener todos los enlaces href asociados a ella. Ver fácil !!

Pero, este podría no ser su requisito, ya que podría estar buscando rastrear un gran conjunto de datos. Aquí es donde entra en juego el marco.

En cuanto a la pregunta, si pudiera mencionar una razón específica de por qué elige Python , me ayudaría a sugerirle mejores opciones.

Pero solo por la popularidad y el apoyo de la comunidad, Scrapy es su mejor opción, ya que la documentación es extremadamente simple de seguir .

Si necesita datos disponibles públicamente para desenterrar Internet, antes de crear un webcraper, es mejor verificar si estos datos ya están disponibles en fuentes de datos públicas o API.

Scrapy es un marco bien establecido para el raspado, pero también es un marco muy pesado. Para trabajos más pequeños, puede ser excesivo y para trabajos extremadamente grandes es muy lento.

Estos son algunos pasos básicos realizados por la mayoría de las arañas web:

1) Comience con una URL y use una solicitud HTTP GET o PUT para acceder a la URL

2) Obtenga todos los contenidos y analice los datos

3) Almacene los datos en cualquier base de datos o póngalos en cualquier almacén de datos

4) Poner en cola todas las URL en una página

5) Use las URL en la cola y repita desde el proceso 1

Aquí están los 3 módulos principales en cada rastreador web:

1) Solicitud / respuesta manejador.

2) Análisis de datos / limpieza de datos / proceso de mezcla de datos.

3) serialización de datos / tuberías de datos.

Lee mas…

Hay finitos no. del marco utilizado en python para diferentes propósitos, mencione a continuación:

1.Django

2.TurboGears

3.Web2py

4.Cubicweb

5.Giotto

Aparte de esto, hay un marco de trabajo llamado scrapy que se utiliza únicamente con fines de raspado web. podemos eliminar fácilmente los datos a través de este marco. Para obtener más información sobre esto, contáctenos visitando nuestro sitio web: http: //www.researchinfinitesolut