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.
Het krijgen van een lijst van alle kerken in een bepaalde toestand met Python
bron van user Hamish Grubijan
In andere talen...
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.
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.
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 :)
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.
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.