2009-07-01 15 views
9

El código fuente detrás de EveryBlock.com, un importante sitio web impulsado por Django fundado por Adrian Holovaty, uno de los Dictadores co-benévolo para la vida del framework Django, fue recientemente open-sourced. La fuente está disponible como tarballs y en github.¿Cuáles son algunas características interesantes del código fuente de EveryBlock.com?

Este gran cuerpo de código de un creador de Django debe tener algunas características, patrones, trucos o técnicas interesantes. ¿Cual es tu favorito?

+0

Hrm ... Subjetivo. Probablemente debería ser CW. – baudtack

+1

"favorito"? Por favor conviértalo en una wiki comunitaria. –

Respuesta

1

El monstruo de expresión regular masiva que utilizan para geocodificar ubicaciones de texto en inglés. Las oraciones de noticias como "El rodaje se escuchó en el área Este del 3er entre Locust y Pine St" generará un polígono PostGIS que luego coincidirá con las ubicaciones de los usuarios y la capa en los mapas. Es un gran sitio, he estado entusiasmado con esto, pero no había visto el anuncio hasta ahora.

1

Muy bueno que hayan lanzado la fuente. Es un buen código y creo que hay algo que aprender de echarle un vistazo.

Estoy muy interesado en la funcionalidad de geo/mapeo, pero también me parecen bastante interesantes las rutinas de raspado utilizadas para recopilar datos públicos de varias fuentes públicas.

3

Algunas de las cosas que he notado:

  • El sistema de publicación ebpub utiliza autenticación de Django costumbre y sistema del usuario, por lo tanto, no se puede utilizar django-admin.

  • Altho 'utiliza la base de datos relacional PostgreSQL, los elementos de datos para varias entradas de datos se almacenan en una sola tabla, con tipos de campos definidos en otra tabla, para la escalabilidad. (Una alternativa a los sistemas de almacenamiento de pares clave-valor, CouchDB)

  • El sistema utiliza un back-end de base de datos personalizado, de modo que se puede acceder a dicha base de datos modificada con comodidad en las vistas.

  • La aplicación de blog es muy pequeña y dulce; Solo 1 Entry modelo y sin vistas, solo vistas genéricas.

  • Algunos de los bots presentes se pueden utilizar para múltiples propósitos, con pocos ajustes.

0

Veo que tienen un raspador por sitio por ciudad.
Me pareció demasiado trabajo ya que hay una mejor manera de utilizar un raspador genérico con varias directivas que serán específicas del sitio. Esta es la forma en que escribí mi raspador para newjoblist.com

Me gusta la apariencia & estoy seguro.

mapa es demasiado lavado

Creo que la fuente es bueno mirar y aprender qué hacer o no hacer. Una gran referencia.

Cuestiones relacionadas