Tải các trang web

Một phần của tài liệu (LUẬN văn THẠC sĩ) xây dựng hệ thống khảo duyệt web phân tán và thu thập dữ liệu phục vụ các hệ hỗ trợ quyết định luận văn ths công nghệ thông tin (chương trình đào tạo thí điểm) (Trang 29 - 30)

CHƢƠNG 2 MỘT SỐ HỆ THỐNG THU THẬP DỮ LIỆU

2.1. Kiến trúc chung của hệ thống Web Crawler

2.1.3. Tải các trang web

Để nạp mọ t trang web, ta cần mọ t HTTP client để gửi mọ t yêu cầu HTTP tới mọ t trang web và đọc các đáp ứng. Phía client cần có mọ t thời gian timeout để đảm bảo r ng nó không lãng phí quá nhiều thời gian để giao tiếp với mọ t server quá chạ m hoạ c đọc mọ t trang web quá lớn. Trên thực tế, thu ờng giới hạn client chỉ download các trang web có kích thu ớc nhỏ ho n 10-20KB. Phía client cần duyẹ t các đáp ứng header để lấy các mã trạng thái và các sự định hu ớng lại (redirection). Chúng cũng duyẹ t header và lu u thời gian sửa đổi (last-modify) để xác định đọ cạ p nhạ t của trang web. Viẹ c kiểm tra các lỗi và ngoại lẹ là rất quan trọng trong quá trình tải trang web do chúng ta sẽ phải liên hẹ tới hàng triẹ u server ở xa b ng cùng mọ t đoạn mã lẹ nh. Thêm vào đó, viẹ c thu thạ p các thống kê về thời gian timeout và các mã trạng thái cũng rất hữu ích trong viẹ c xác định các vấn đề nảy sinh hoạ c để thay đổi tự đọ ng giá trị timeout. Các ngôn ngữ lạ p trình hiẹ n đại nhu Java hoạ c Perl cung cấp các co chế đo n giản cùng nhiều giao diẹ n lạ p trình để tải các trang web. Tuy nhiên, ta cũng cần phải cẩn thạ n trong viẹ c sử dụng các giao diẹ n bạ c cao do có thể sẽ khó tìm ra các lỗi ở bạ c thấp.

Chúng ta không thể kết thúc viẹ c nói về quá trình crawling mà không đề cạ p tới giao thức loại trừ robot - Robot Exclusion Protocol. Giao thức này cung cấp mọ t co chế cho các nhà quản trị web server để thông báo về các quyền truy nhạ p file trên server, đạ c biẹ t là để chỉ định các file không đu ợc truy cạ p bởi mọ t crawler. Điều này đu ợc thực hiẹ n b ng cách lu u mọ t file có tên robots.txt du ới thu mục chủ của web server (ch ng hạn http: www.biz.uiowa.edu robots.txt). File này cung cấp các chính sách truy cạ p các cho User-agents khác nhau (robots hoạ c crawler). Mọ t giá trị User- agent „*‟ biểu diễn mọ t chính sách mạ c định cho bất kỳ crawler nào không khớp (match) các giá trị User-agent khác trong file. Mọ t số các đầu vào bị cấm Disallow đu ợc đề ra cho mọ t User-agent. Bất kỳ URL nào bắt đầu với giá trị tru ờng disallow đu ợc đạ t sẽ không đu ợc truy xuất bởi các crawler ứng với các giá trị User-agent đã chỉ định. Khi mọ t crawler muốn lấy ra mọ t trang web từ web server, đầu tiên nó phải nạp file robots.txt và đảm bảo r ng URL cần nạp là không bị cấm. Các thông tin chi tiết về giao thức loại trừ này có thể tìm thấy ở http: www.robotstxt.org wc norobots.html. Viẹ c lu u cache các chính sách truy nhạ p của mọ t số server đu ợc truy nhạ p gần đây là khá hiẹ u quả. Điều này cho ph p tránh phải truy nhạ p mọ t file robots.txt mỗi khi cần nạp mọ t URL. Tuy nhiên, ta cần phải đảm bảo r ng các thông tin trong cache là đủ cạ p nhạ t.

Ví dụ Ý nghĩa

User-agent: * Disallow: /cgi-bin/ Disallow: /tmp/

Tất cả các máy tìm kiếm có thể thăm tất cả các thƣ mục ngoại trừ hai thƣ mục đề cập ở đây

User-agent: BadBot Disallow: /

Máy tìm kiếm BadBot không đƣợc ph p thăm bất cứ thƣ mục nào

User-agent: BadBot Disallow: /

User-agent: * Disallow: /private/

Riêng máy tìm kiếm BadBot không đƣợc ph p thăm bất cứ thƣ mục nào còn tất cả các máy tìm kiếm còn lại đều có quyền thăm tất cả các thƣ mục ngoại trừ thƣ mục private

Một phần của tài liệu (LUẬN văn THẠC sĩ) xây dựng hệ thống khảo duyệt web phân tán và thu thập dữ liệu phục vụ các hệ hỗ trợ quyết định luận văn ths công nghệ thông tin (chương trình đào tạo thí điểm) (Trang 29 - 30)

Tải bản đầy đủ (PDF)

(76 trang)