Anda di halaman 1dari 18

Introduction to Information Retrieval

Penelusuran Informasi
(Information Retrieval)
Sumber:
CS276: Information Retrieval and Web Search
Pandu Nayak and Prabhakar Raghavan
Taufik Fuadi Abidin

Web Crawling

Penelusuran Informasi (Information Retrieval)

Pembahasan Minggu Ini


 Web Crawling
 Cara Kerja
 Arsitektur

Penelusuran Informasi (Information Retrieval)

Sec. 20.2

Intro Web Crawling


 Dimulai dengan URL seed
 Fetch & parse URL tersebut
 Ekstrak URL tautan
 Insert ke dalam Queue

 Baca URL dalam Queue satu per satu


dan ulangi proses tersebut
3

Sec. 20.2

Introduction to Information Retrieval

Ilustrasi dari Web Crawling

URLs crawled
and parsed
Unseen Web
Seed
pages

URLs frontier

Web
4

Penelusuran Informasi (Information Retrieval)

Sec. 20.1.1

Gambaran Sederhana Web Crawling


 Web crawling tidak ditangani oleh 1 mesin
 Semua proses dilakukan secara terdistribusi

 Harus mampu menangani


 Halaman Spam
 Jebakan Spider (halaman yang dinamis)

 Juga tantangan-tantangan berikut:


 Latency/bandwidth ke server tujuan berbeda-beda
 Seberapa dalam akan di-crawl
 Menangani halaman ganda (duplicate pages)

 Sopan (Politeness) dont hit a server too often


5

Penelusuran Informasi (Information Retrieval)

Sec. 20.1.1

Apa yang harus dilakukan Crawler?


 Sopan (Polite): Respect implicit and explicit
politeness considerations
 Hanya halaman yang diizinkan di crawl
 Respect robots.txt

 Harus tangguh (Robust): Be immune to


spider traps and other malicious behavior
from web servers
6

Sec. 20.1.1

Introduction to Information Retrieval

Ilustrasi dari Web Crawling (Update)

URLs crawled
and parsed
Unseen Web
Seed
Pages
URL frontier
Crawling thread

Penelusuran Informasi (Information Retrieval)

Sec. 20.2

URL Frontier
 Dapat menerima halaman-halaman (lebih
dari satu) dari host yang sama
 Namun hindari mengakses mereka pada
waktu yang bersamaan
 Harus berusaha agar crawling threads busy

Penelusuran Informasi (Information Retrieval)

Sec. 20.2

Explicit & Implicit Politeness


 Explicit politeness: ditentukan oleh
webmaster menggunakan file robots.txt
 Implicit politeness: walaupun tidak ada
robots.txt, usahakan agar server tidak
diakses terlalu sering (bersamaan)

Penelusuran Informasi (Information Retrieval)

Sec. 20.2.1

Contoh Robots.txt
 Tidak ada spider yang dapat mengunjungi URL yang
diawali dengan
"/yoursite/temp/", kecuali spider itu adalah
searchengine":
User-agent: *
Disallow: /yoursite/temp/
User-agent: searchengine
Disallow:
10

Sec. 20.2.1

Penelusuran Informasi (Information Retrieval)

Langkah dalam Web Crawling


 Ambil URL dari URL frontier
 Ambil dokumen pada URL tersebut
 Parse dokumen tersebut
 Ekstrak URL tautan ke halaman lain

 Periksa apakah URL itu kontennya sudah pernah ada


 Jika belum, masukkan dalam indeks

 Untuk setiap URL yang diperoleh

crawl .edu saja dan


patuh dengan
robots.txt

 Pastikan URL tersebut lulus filter tests


 Periksa apakah URL ada dalam URL frontier (eliminasi URL
ganda)
11

Sec. 20.2.1

Introduction to Information Retrieval

Basic crawl architecture


DNS

WWW

Doc

robots
filters

URL
set

Content
seen?

URL
filter

Dup
URL
elim

Parse
Fetch

URL Frontier
12

Penelusuran Informasi (Information Retrieval)

Sec. 20.2.2

DNS (Domain Name Server)


 Servis lookup di internet
 Diberikan sebuah URL, didapat alamat IP-nya
 DNS servis dilayani oleh sekumpulan server terdistribusi,
sehingga lookup latency bisa tinggi

13

Penelusuran Informasi (Information Retrieval)

Sec. 20.2.1

Parsing: URL Normalisasi


 Ketika konten sebuah dokumen di-parse, beberapa link
yang ditemukan dapat berupa relative URLs
 Contoh: http://en.wikipedia.org/wiki/Main_Page
memiliki relative link to
/wiki/Wikipedia:General_disclaimer yang kontennya
sama persis dengan URL sebelumnya
http://en.wikipedia.org/wiki/Wikipedia:General_disclaimer

 Selama parsing dilakukan, proses normalisasi


(expanding URL) harus dapat dilakukan
14

Penelusuran Informasi (Information Retrieval)

Sec. 20.2.1

Apakah Konten dijumpai Sebelumnya?


 Konten yang duplikasi banyak
ditemukan di Internet
 Jika sebuah halaman yang baru saja dicrawl sudah ada dalam indeks maka
halaman tersebut tidak diproses lagi
 Hal ini dapat dilakukan menggunakan
document fingerprints atau shingles
15

Introduction to Information Retrieval

Sec. 20.2.1

Filters & robots.txt


 Filters adalah regex untuk menentukan
format URL yang ingin di-crawl atau
tidak
 Jika file robots.txt dibaca pada situs,
cukup dibaca sekali saja
 File robots.txt di-cache-kan

16

Penelusuran Informasi (Information Retrieval)

Sec. 20.2.1

Eliminasi URL yang Ganda


 Cek apakah URL tersebut sudah pernah
dijumpai dalam URL Fronteir sebelumnya
 Eliminasi jika sudah ditemui sebelumnya
 Jangan diproses lagi

17

Penelusuran Informasi (Information Retrieval)

Sec. 20.2.3

URL Frontier: Dua Pertimbangan Utama


 Politeness: jangan akses server terlalu sering
 Freshness: crawl beberapa halaman lebih sering
dari pada halaman yang lain, misalnya portal
berita dan lain-lain yang updatenya cepat

18

Anda mungkin juga menyukai