Op mijn werk houden we af en toe een code competition. Deze keer is er een wedstrijd waarbij we een soort webspider moeten ontwikkelen. De spider moet zoveel mogelijk verschillende Nederlandse sites zien te vinden.
Mogelijke oplossing: een Google zoek actie starten naar Nederlandse sites, iedere gevonden pagina doorlopen (mits de URL eindigd met .nl), binnen iedere pagina weer andere links zoeken naar Nederlandse sites. Komt een site nog niet voor in de database, dan wordt die toegevoegd.
Mijn vraag: heeft iemand een idee of er een effectievere methode bestaat om zo'n spider te laten zoeken? Suggesties zijn welkom, ik wil per slot van rekening graag winnen. Ik hoef dus geen code voorbeelden, het gaat meer om de theorie.
Voor meer info (en restricties) lees onderstaande mail:
Mogelijke oplossing: een Google zoek actie starten naar Nederlandse sites, iedere gevonden pagina doorlopen (mits de URL eindigd met .nl), binnen iedere pagina weer andere links zoeken naar Nederlandse sites. Komt een site nog niet voor in de database, dan wordt die toegevoegd.
Mijn vraag: heeft iemand een idee of er een effectievere methode bestaat om zo'n spider te laten zoeken? Suggesties zijn welkom, ik wil per slot van rekening graag winnen. Ik hoef dus geen code voorbeelden, het gaat meer om de theorie.
Voor meer info (en restricties) lees onderstaande mail:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
| Opdracht =================== Vind zoveel mogelijk unieke, werkende, nederlandse! (.nl), domeinnamen. Vind per domeinnaam/website : de titel van de homepage, en de metatags description en keywords. Sla de gevonden domeinnamen op in een database. Werking van je programma =================== Programma moet een delete knop hebben die alle records verwijderd uit je database. Een start knop die begint en een stop knop. Hij moet dus niet automatisch beginnen. Optioneel =================== Andere properties per domeinnaam zijn natuurlijk ook leuk :-) denk aan webserver software (apache, iis) per domeinnaam, of de grootte van de homepage. Ip adres kan leuk zijn zodat je ziet welke domeinen op 1 machine draaien. Reactie snelheid van de site. Etc. voel je vrij om andere properties te verzinnen. Regels ==================== Je mag géén dictionary's van te voren in je code hebben. Wel een handvol start url's en methodieken om te zoeken. Maar geen kant en klare woordenboeken of ellenlange url lijsten. Verder zijn er géén regels. Je bent vrij om zoekmachines online te gebruiken, woorden boeken online te gebruiken, etc. Hier op kantoor NIET je applicatie voor langere tijd aanzetten. Kort testen is goed. Vrijdag eind vd middag kan je gebruiken. Competitie: ==================== Gemeten wordt : het aantal gevonden sites mét properties, dus echt werkende sites in je database. Niet het aantal records in je database. Er zijn 2 competities, de "10-minutes version" en de "10-hours version" compo. Met de short version draait je applicatie 10 minuten. Hier komt het dus aan op snel verwerken van de data. Met de long version draait je applicatie 10 uur en gaat het dus juist om een effectieve zoek methode Je mag voor de verschillende compo's eventueel verschillende applicaties aanleveren als je mogelijk optimalisaties hebt voor de short die niet voor long van toepassing zijn of andersom. |
Microsoft Windows: A thirty-two bit extension and graphical shell to a sixteen-bit patch to an eight-bit operating system originally coded for a four-bit microprocessor which was written by a two-bit company that can't stand one bit of competition.