Het krijgen van een lijst van alle kerken in een bepaalde toestand met Python

stemmen
-3

Ik ben vrij goed met Python, dus pseudo-code kan worden volstaan ​​wanneer details zijn triviaal. Gelieve mij begon op de taak - hoe gaan over het kruipen het net voor de snail mail adressen van kerken in mijn staat. Zodra ik heb een one-liner, zoals 123 Old West Road # 3 Old Lyme Stad MD 01234, kan ik waarschijnlijk ontleden het in de stad, staat, straat, nummer, apt met genoeg trial and error. Mijn probleem is - als ik witte pagina's online te gebruiken, hoe ga ik om met alle HTML troep, HTML-tabellen, advertenties, etc? Ik denk niet dat ik nodig hun telefoonnummer, maar het kan geen kwaad - ik kan altijd gooi het eruit eenmaal ontleed. Zelfs als uw oplossing is half-manual (zoals save naar pdf, open vervolgens acrobaat, opslaan als tekst) - Ik kan nog steeds blij mee. Bedankt! Heck, ik zal zelfs accepteren Perl fragmenten - Ik kan ze zelf vertalen.

De vraag is gesteld op 14/12/2009 om 23:29
bron van user
In andere talen...                            


5 antwoorden

stemmen
2

Probeer lynx --dump <url>om de webpagina's te downloaden. Alle lastige HTML-tags worden gestript van de output, en alle links op de pagina verschijnen samen.

antwoordde op 14/12/2009 om 23:36
bron van user

stemmen
2

Je zou kunnen gebruiken mechanize . Het is een python bibliotheek die een browser simuleert, dus je zou kunnen kruipen door de witte pagina's (vergelijkbaar met wat je handmatig te doen).

Om iets te doen met de 'html junk' python heeft een bibliotheek voor dat ook: BeautifulSoup Het is een mooie manier om de gegevens die u wilt van HTML te krijgen (natuurlijk wordt verondersteld dat je weet dat een beetje over HTML, zoals u zult nog steeds moeten de parse boom te navigeren).

Update: Als u uw follow-up vraag hoe om te klikken door meerdere pagina's. mechanize is een bibliotheek om dat te doen. Neem een ​​kijkje op hun voorbeelden, esp. follow_link de werkwijze. Zoals ik al zei dat simuleert een browser, dus 'klikken' snel in python kan worden gerealiseerd.

antwoordde op 14/12/2009 om 23:42
bron van user

stemmen
2

Wat je probeert te doen is genoemd schrapen of web schrapen.

Als u sommigen doen zoekopdrachten op python en schrapen , kunt u een lijst vinden gereedschappen die u zullen helpen.

(Ik heb nooit gebruikt scrapy, maar het is de site ziet er veelbelovend uit :)

antwoordde op 14/12/2009 om 23:46
bron van user

stemmen
2

Mooie Soep is een no brainer. Hier is een site die u zou kunnen beginnen bij http://www.churchangel.com/ . Ze hebben een enorme lijst en de opmaak is zeer regelmatig - vertaling: gemakkelijk te installeren BSoup te schrapen.

antwoordde op 15/12/2009 om 00:17
bron van user

stemmen
1

Python-scripts is misschien niet de beste tool voor deze baan, als je gewoon op zoek naar adressen van kerken in een geografisch gebied.

De telling van de VS zorgt voor een dataset van kerken voor gebruik met geografische informatiesystemen. Als het vinden van alle xin een ruimtelijk gebied is een terugkerend probleem, te investeren in het leren van een GIS. Dan kunt u breng uw Python vaardigheden om veel geografische taken uitoefenen op.

antwoordde op 15/12/2009 om 00:34
bron van user

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more