2009-04-07 13 views
12

Chcę indeksować w poszukiwaniu określonych rzeczy. Konkretnie wydarzenia, które mają miejsce, takie jak koncerty, filmy, otwarcia galerii itp. Wszystko, na co ktoś może poświęcić czas.Indeksowanie Internetu

Jak mogę wdrożyć przeszukiwacz?

Słyszałem Grub (grub.org -> Wikia) i Heritix (http://crawler.archive.org/)

Czy są jakieś inne?

Jakie opinie ma każdy?

-Jason

Odpowiedz

3

Myślę, że część webcrawlera będzie najłatwiejszą częścią zadania. Najtrudniejsze będzie ustalenie, które strony odwiedzić i jak odkrywać wydarzenia na stronach, które chcesz odwiedzić. Może chcesz sprawdzić, czy chcesz uzyskać dane, korzystając z Google lub Yahoo API. Wykonali już pracę polegającą na indeksowaniu wielu stron w Internecie - możesz skupić się na, moim zdaniem, znacznie większym problemie z przesiewaniem danych, aby uzyskać pożądane wydarzenia.

1

Jeśli okaże się, że przeszukiwanie Internetu staje się zadaniem, które może przynieść sukces, warto rozważyć zbudowanie subskrypcji kanałów RSS dla popularnych witryn zdarzeń, takich jak craigslist i upcoming.org.

Każda z tych witryn udostępnia zlokalizowane zdarzenia, które można przeszukiwać. RSS oferuje (kilka) standardowych formatów, zamiast wszystkiego zniekształconego html, który tworzy sieć ...

Istnieją biblioteki opensource, takie jak ROME (java), które mogą pomóc w konsumpcji kanałów RSS.

0

Po zgłoszeniu Kevin's sugestii kanałów RSS, możesz sprawdzić Yahoo pipes. Jeszcze ich nie wypróbowałem, ale myślę, że pozwalają ci przetwarzać kilka kanałów RSS i generować strony internetowe lub więcej kanałów RSS.

+1

Nigdy nie używaj rur do niczego dużego. Nie jest bardzo niezawodny i dość powolny. – mixdev

4

Wyjazd Scrapy. Jest to framework indeksujący do otwartych źródeł napisany w Pythonie (słyszałem, że jest podobny do Django, z wyjątkiem tego, że zamiast wyświetlać strony, pobiera je). Jest łatwo rozszerzalny, rozproszony/równoległy i wygląda bardzo obiecująco.

Używałbym Scrapy, ponieważ w ten sposób mogłem zaoszczędzić mocnych stron na coś bardziej trywialnego, jak na przykład wyodrębnić poprawne dane ze zeskrobanej zawartości itp. I wstawić do bazy danych.

2

Właściwie pisząc skali skierowany robota jest dość trudnym zadaniem. Zaimplementowałem go w pracy i utrzymywałem go przez dłuższy czas. Istnieje wiele problemów, o których istnieniu nie wiesz, dopóki ich nie napiszesz i nie rozwiążesz problemów. W szczególności zajmuje się CDN i przyjaznym indeksowaniem stron. Algorytmy adaptacyjne są bardzo ważne lub użyjesz filtrów DOS. Tak czy owak, nie będziesz wiedział, czy twój indeks jest wystarczająco duży.

Co o tym myśleć:

  • Co oprócz zdolnego przepustowości?
  • Jak radzisz sobie z wyłączeniami witryny?
  • Co się stanie, jeśli jesteś zablokowany?
  • Czy chcesz zaangażować się w ukrywanie czołgania się (kontrewersyjne i właściwie dość trudne do uzyskania prawo)?

Naprawdę napisałem kilka rzeczy, że jeśli kiedykolwiek się do tego zabiorę, mogę umieścić online o budowie gąsienic, ponieważ zbudowanie właściwego jest o wiele trudniejsze, niż ludzie ci powiedzą. Większość robotów open source działa wystarczająco dobrze dla większości ludzi, więc jeśli możesz, polecam użyć jednego z nich. Który z nich jest wyborem funkcji/platformy.