Sunday, June 24, 2007

Infractiuni Bucuresti - Mashup cu harta infractiunilor din Bucuresti

In weekend-ul asta se vede ca am avut chef de munca, prin urmare am reusit sa aduc "the finishing touches" si pentru un alt proiect care ramasese la stadiul de 95% cam de vreo 4-5 luni.

Este vorba despre Infractiuni Bucuresti, un mashup intre stirile privind Politia Romana publicate de catre agentia de presa Amos News (mai precis arhiva acesteia) si hartile oferite de Google Maps si Microsoft Local Live.

Mai multe amanunte despre acest proiect puteti afla in pagina Despre "Infractiuni Bucuresti", dar cateva dintre ele o sa le insir si aici.

Mai intai, acesta este un proiect personal, pentru a incerca sa arat ca se pot face lucruri interesante atunci cand informatia de interes general este pusa la dispozitia publicului larg pe internet. In al doilea rand, tin sa precizez ca nu am nici o legatura cu Politia Romana, in sensul ca nu am colaborat si nici nu am lucrat vreodata pentru aceasta institutie.

Si in al treilea rand, dar la fel de important, locatia stirilor pe harta nu este 100% exacta.

A fost un proiect "fun", care a plecat de la o frustrare mai veche de-a mea. Din pacate stirile acopera doar intervalul 2002 - 2005, si desigur ca nu toate infractiunile din aceasta perioada de timp si-au gasit locul in stirile publicate de catre Politia Romana pe Amos News. Deasemenea, cum informatia privind localitatea si adresa la care au avut loc diferitele evenimente erau incluse in "raw text", nefiind formatate (think XML) marcate prin micro-taguri sau orice altceva, a trebuit sa scriu un mic script care sa incerce sa extraga stirile asociate orasului Bucuresti si adresele din acele stiri. De multe ori mi-a reusit, dar probabil ca sunt si cazuri in care am marcat o stire din Onesti (de exemplu) ca avand loc pe o strada oarecare din Bucuresti.
Have fun, and don't be scared :)

4 Comments:

Anonymous Anonymous said...

Si pentru Adrian Holovaty - chicagocrime.org, job-ul a fost similar avand in vedere ca nici politia din Chicago nu serveste continut mai standardizat; ca sursa de date el are Citizen ICAM.

Ar mai fi interesante niste filtre: tipologia infractiunii, sectia de politie, nume implicate :).
Dar, banuiesc ca asta implica o filtrare manuala...

4:16 PM  
Blogger mihai turcu said...

"""Ar mai fi interesante niste filtre: tipologia infractiunii, sectia de politie, nume implicate :).
Dar, banuiesc ca asta implica o filtrare manuala...
"""

Da, asta fi cam singura solutie. Sau as putea face ce am facut cu categoriile de pe MogNews, sa creez cate un "training set" pentru fiecare tip de infractiune si dupa aceea sa impart automat restul de infractiuni asa cum impart acum automat articolele in categorii. Dar mi-e cam lene sa creez training set-urile :) (trebuie cel putin 150 de articole pentru fiecare categorie), si nu stiu daca articolele sunt asa de diferite intre ele astfel incat in functie de tipul infractiunii categorizarea acestora sa dea rezultate relevante.

4:43 PM  
Anonymous Anonymous said...

Ce folosesti la MogNews pentru "spidering"?

9:59 PM  
Blogger mihai turcu said...

Folosesc un script Python scris de mine. Pentru fiecare ziar/revista am niste parametri de parsare (forma linkurilor, cum pot identifica titlurile articolelor etc.) salvati in baza de date, care sunt cititi de catre scriptul respectiv inainte sa inceapa parsarea.

11:06 AM  

Post a Comment

<< Home