The algorithm for a web crawler fits on a napkin:
- Take a URL off a queue.
- Download the page.
- Extract its links.
- Put the new ones back on the queue. Repeat.
Write that and you have a crawler. Point it at the open web and within about ten minutes you will have been rate-limited, IP-banned, trapped in an infinitely deep calendar page, and served the same article eleven times under eleven different URLs.
Continue reading »