LNGHIÊN CỨU MÁY TÌM KIẾM VÀ XÂY DỰNG THỬ NGHIỆM MÔ PHỎNG MÁY TÌM KIẾM - Pdf 32

ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CÔNG NGHỆ THÔNG TIN
Tel. (84-511) 3736 949, Fax. (84-511) 842 771
Website: itf.ud.edu.vn, E-mail: [email protected]
LUẬN VĂN TỐT NGHIỆP
NGÀNH CÔNG NGHỆ THÔNG TIN
MÃ NGÀNH : 05115
ĐỀ TÀI:
NGHIÊN CỨU MÁY TÌM KIẾM VÀ XÂY DỰNG THỬ NGHIỆM
MÔ PHỎNG MÁY TÌM KIẾM
SINH VIÊN : PHAN TẤN LUẬN
LỚP : 04T1
CBHD : TS.NGUYỄN THANH BÌNH
ĐÀ NẴNG, 06/2009
LỜI CẢM ƠN
Để hoàn thành được đồ án này, em đã nhận được sự chỉ bảo tận tình
của các Thầy Cô giáo trong khoa Công nghệ Thông tin trường Đại học
Bách Khoa, cùng sự giúp đỡ động viên của gia đình và bạn bè.
Trước tiên em xin chân thành cảm ơn tất cả các thầy cô của trường Đại
học Bách Khoa, Đại học Đà Nẵng đã dạy dỗ và truyền đạt kiến thức cho
em trong thời gian học tại trường.
Em xin chân thành cám ơn Tiến sĩ Nguyễn Thanh Bình, thầy đã tận tình
hướng dẫn góp ý cho em trong quá trình thực hiện đồ án này. Nhờ đó mà
em có thể hoàn thành theo đúng yêu cầu về nội dung của một đồ án tốt
nghiệp.
Em cũng xin được cám ơn những người bạn cùng ngành đã động viên
giúp đỡ em trong suốt thời gian làm đồ án.
Cuối cùng, con xin cảm ơn gia đình đã tạo mọi điều kiện tốt nhất để
bản thân có thể hoàn thành được đồ án đúng hạn.
Mặc dù đã cố gắng hết sức, nhưng vì khả năng và thời gian có hạn, đề

.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
NHẬN XÉT CỦA CÁN BỘ DUYỆT
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................

.I.2.1. Giới thiệu chung................................................................................................18
Các bước thực hiện.....................................................................................................20
Các lớp chính .............................................................................................................21
.II VẤN ĐỀ CẦN NGHIÊN CỨU ..................................................................................23
.II.1. HyperText Transfer Protocol...............................................................................23
.II.1.1. Định dạng địa chỉ (Internet addressing).........................................................23
.II.2. Lập trình đa luồng trong java..............................................................................27
.II.2.1. Thread là gì?....................................................................................................27
.II.2.2. Thread trong ngôn ngữ Java...........................................................................27
.II.3. Phân tích HTML..................................................................................................29
.II.3.1. Bốn thành phần cơ bản của Html....................................................................29
.II.3.2. Thành phần mà crawler phân tích..................................................................31
.II.3.3. Vấn đề cần xử lý...............................................................................................33
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG...................................................36
.I PHÂN TÍCH HỆ THỐNG ...........................................................................................36
.I.1. Gói crawler............................................................................................................37
.I.1.1. Use-case quản lý các liên kết............................................................................38
.I.1.2. Usecase quản lý thiết lập các tùy chọn............................................................45
.I.2. Gói reader..............................................................................................................46
.I.3. Gói indexer............................................................................................................47
.I.4. Gói searcher và ứng dụng web.............................................................................48
.II THIẾT KẾ HỆ THỐNG..............................................................................................49
.II.1. Tổng thể chương trình.........................................................................................49
.II.1.1. Gói crawler......................................................................................................51
.II.1.2. Gói reader........................................................................................................52
.II.1.3. Gói indexer.......................................................................................................54
.II.2. Xây dựng các chức năng......................................................................................54
.II.2.1. Chức năng xác nhận cho phép đánh chỉ mục.................................................54
.II.2.2. Chức năng tải tài liệu về máy........................................................................56
.II.2.3. Tạo công việc mới............................................................................................57

[6] Trang web: http://maven.apache.org..........................................................................76
[7] Trang web: http://vi.wiktionary.org/..........................................................................76
[8] Trang web: http://en.wikipedia.org/wiki/Search_engines.........................................76
[9] Trang web: http://www.vietseo.net/...........................................................................76
TÓM TẮT ĐỀ TÀI.........................................................................................77
MỤC LỤC HÌNH ẢNH
HÌNH 1 GIAO DIỆN CỦA GOOGLE SEARCH ENGINE...........................2
HÌNH 2 GIAO DIỆN CỦA XALO.VN SEARCH ENGINE..........................3
HÌNH 3 SƠ ĐỒ USECASE BAN ĐẦU CỦA HỆ THỐNG............................6
HÌNH 4 TỔNG QUAN HỆ THỐNG TÌM KIẾM..........................................8
HÌNH 5 BIỂU ĐỒ TRẠNG THÁI CỦA MỘT LIÊN KẾT.........................13
HÌNH 6 QUÁ TRÌNH ĐÁNH CHỈ MỤC.....................................................16
HÌNH 7 CÁC BƯỚC PHÂN TÍCH TÀI LIỆU.............................................16
HÌNH 8 VÒNG ĐỜI CỦA MỘT THREAD..................................................28
HÌNH 9 BẢNG TRONG HTML....................................................................33
HÌNH 10 SƠ ĐỒ THÀNH PHẦN TỔNG QUAN CỦA HỆ THỐNG.........36
HÌNH 11 CẤU TRÚC CỦA CRAWLER......................................................38
HÌNH 12 SƠ ĐỒ USE-CASE CỦA GÓI CRAWLER..................................38
HÌNH 13 SƠ ĐỒ USECASE CỦA VIỆC QUẢN LÝ CÁC LIÊN KẾT GỐC39
HÌNH 14 SƠ ĐỒ TRẠNG THÁI THÊM MỚI CÁC LIÊN KẾT GỐC......40
HÌNH 15 SƠ ĐỒ TRẠNG THÁI CỦA TÁC VỤ CHỈNH SỬA MỘT LIÊN
KẾT GỐC.......................................................................................................41
HÌNH 16 SƠ ĐỒ TRẠNG THÁI XÓA LIÊN KẾT GỐC............................42
HÌNH 17 SƠ ĐỒ USECASE CHO TÁC VỤ QUẢN LÝ CÁC LIÊN KẾT ĐÃ
TẢI VỀ MÁY..................................................................................................43
HÌNH 18 SƠ ĐỒ USECASE QUẢN LÝ DANH SÁCH CÁC THƯ MỤC
CHỨA TÀI LIỆU...........................................................................................45
HÌNH 19 SƠ ĐỒ TỔNG THỂ CÁC THÀNH PHẦN CỦA GÓI READER47
HÌNH 20 SƠ ĐỒ HOẠT ĐỘNG CỦA GÓI INDEXER...............................48
HÌNH 21 SƠ ĐỒ HOẠT ĐỘNG CỦA GÓI SEARCHER VÀ ỨNG DỤNG

LIỆU TẢI VỀ.................................................................................................64
BẢNG 9 BẢNG MÔ TẢ CÁC LỚP CHÍNH CỦA CHƯƠNG TRÌNH .....65
Chương 1
Chương 1
TỔNG QUAN ĐỀ TÀI
.I GIỚI THIỆU CHUNG VỀ VẤN ĐỀ NGHIÊN CỨU
Hiện nay Internet là nguồn tài nguyên vô tận của nhân loại chỉ cần vài lần nhấp chuột ta
có thể tiếp cận được những nguồn tài liệu mong muốn. Để tiếp cận được tài liệu thích hợp
ta nhờ vào các máy tìm kiếm (search engine) vì vậy máy tìm kiếm chiếm lĩnh một vị trí vô
cùng quan trọng trong thời đại thông tin. Các máy tìm kiếm thông dụng ngày nay đầu tiên
phải nói đến Google, Yahoo, MSN-Live. Để xây dựng được một hệ thống như vậy vô cùng
phức tạp và nó là đề tài luôn được nghiên cứu để tìm giải pháp tối ưu nhất.
.I.1. Lịch sử phát triển
• Năm 1990 công cụ tìm kiếm đầu tiên được ra đời là Archie-phát triển bởi Alan
Emtage sinh viên đại học McGill, Montreal. Archie cũng bao gồm các thành phần
như các máy tìm kiếm ngày nay, đó là dò tìm tài liệu, thiết lập chỉ mục, xây dựng
giao diện tìm kiếm. Archie chỉ đánh chỉ mục với tên file bằng cách download về tất
cả các thư mục liệt kê danh sách các file nằm trên FTP site.
• Năm 1991 máy tìm kiếm Gopher được đưa ra bởi Mark McCahill tại đại học
Minnesota. Máy tìm kiếm Gopher có thể đánh chỉ mục tên toàn văn bản text đơn
giản.
• Năm 1993 World Wide Web Wanderer xuất hiện, được biết đến như là robot đầu
tiên. Nhiệm vụ của nó là đếm để ước lượng số lượng các web
• Năm 1994 WebCrawler được giới thiệu. Đây là máy tìm kiếm full-text đầu tiên tức
là tìm kiếm trên toàn bộ phần văn bản.
• Năm 1995 máy tìm kiếm Alta Vista ra đời, công cụ đầu tiên cho phép sử dụng các
câu truy vấn là ngôn ngữ tự nhiên. Mặc dù thất bại sau này nhưng Alta vista vẫn
thực sự ấn tượng có thể nói Alta vista là một Google thời bấy giờ
• Năm 1996 công ty Inktomi được khởi đầu tại UC Berkeley và vào tháng 6 năm
1999, công ty Inktomi giới thiệu một thư mục tìm kiếm dựa trên công nghệ

- Tìm kiếm Ảnh: dịch vụ tìm kiếm hình ảnh trên số lượng hơn 20 triệu hình ảnh được
người dùng Việt Nam đưa lên Internet.
Phan Tấn Luận, Lớp: 04T1 3
Tổng quan đề tài
- Tìm kiếm Blog: dịch vụ tìm kiếm cho phép người dùng tìm kiếm thông tin trên hầu
hết các mạng xã hội được cung cấp bởi Việt Nam cũng như trên thế giới mà người Việt
Nam hay sử dụng
- Tìm kiếm Nhạc: dịch vụ tìm kiếm dữ liệu Nhạc từ các Website nghe nhạc trực tuyến
lớn nhất Việt Nam hiện tại.
- Tìm kiếm Rao vặt: dịch vụ tổng hợp và tìm kiếm thông tin rao vặt từ hơn 20 Website
mua bán rao vặt lớn nhất Việt Nam
Với các dịch vụ cung cấp và tính năng khác biệt cho từng dịch vụ, Xa Lộ đang không
ngừng được hoàn thiện để có thể phục vụ tốt nhất nhu cầu tìm kiếm của người dùng
Internet Việt Nam và trở thành máy tìm kiếm tiếng Việt hàng đầu của Việt Nam.
.II LÝ DO CHỌN ĐỀ TÀI
.II.1. Mục tiêu và ý nghĩa của đề tài
Xử lý ngôn ngữ tự nhiên là một nhánh của lĩnh vực trí tuệ nhân tạo và có thể nói đây là
phần khó nhất trong lĩnh vực trí tuệ nhân tạo vì nó liên quan đến việc phải hiểu ngôn ngữ-
công cụ hoàn hảo của tư duy và giao tiếp. Các bài toán và ứng dụng của nhánh xử lý ngôn
ngữ bao gồm:
• Nhận dạng chữ viết
• Nhận dạng tiếng nói
• Tổng hợp tiếng nói
• Dịch tự động
• Tìm kiếm thông tin
• Tóm tắt văn bản
• Khai phá dữ liệu
Đây là các bài toán được rất nhiều chuyên gia quan tâm phát triển, vì tính ứng dụng của
nó rất thiết thực trong đời sống xã hội. Ngay từ khi còn ngồi trên ghế nhà trường em mong
một ngày nào đó sẽ được làm việc trong nhánh xử lý ngôn ngữ. Với mong ước đó trong

miền, hoặc cho phép theo những liên kết khác tên miền.
• Các tài liệu tìm thấy thường ở các dạng chính .html, .pdf, .doc sẽ được tải về lưu
trữ trên máy.
.2 Xây dựng chức năng xử lý tài liệu thành các văn bản thuần túy (plaintext)
• Từ kho tài liệu đã tìm được, hệ thống sẽ xử lý đưa về định dạng đơn giản nhất là
văn bản thuần túy. Để phục vụ cho các bước phân tích sau.
.3 Lập chỉ mục cho các tài liệu đã tìm được
• Từ các văn bản thuần túy đã truy xuất ra được ta sẽ thực hiện các bước như đưa
tất cả về chữ thường, phân tích văn bản thành từng đơn vị từ vựng, loại bỏ các
stopwords, thực hiện đưa văn bản về thành từ gốc (stemming, chỉ thực hiện
phần này trong Tiếng Anh), tính trọng số của từ, loại bỏ những từ có trọng số
thấp.
• Tiến hành lập các tập tin chỉ mục đảo cho các thông tin vừa tìm được
.4 Tìm kiếm tài liệu
• Từ các chỉ mục đảo ta có thể xây dựng ứng dụng tìm kiếm cho tài liệu ta thu
thập được ở dạng tìm kiếm toàn văn.
• Hệ thống nhận truy vấn từ người dùng, truy vấn sẽ được phân tích qua các bước
như: đưa về chữ thường loại bỏ, stopword. Sau đó tiến hành tìm kiếm, trả về kết
quả được sắp xếp theo độ tương đồng với câu truy vấn giảm dần.
Phan Tấn Luận, Lớp: 04T1 5
Tổng quan đề tài
Từ nhiệm vụ như trên ta có sơ đồ usecase tổng quát
Hình 3 Sơ đồ usecase ban đầu của hệ thống
Đây chỉ là sơ đồ hình dung ban đầu, vì thế có thể được thay đổi trong các bước phân
tích sau.
.II.2.2. Xây dựng ứng dụng web
Xây dựng giao diện giao tiếp giữa hệ thống và người sử dụng. Người sử dụng ở đây
gồm người quản trị hệ thống, và người tìm kiếm. Người quản trị hệ thống sẽ có các chức
năng vận hành hệ thống còn người dùng thì sẽ nhập câu truy vấn và nhận kết quả trả về.
.II.3. Hướng nghiên cứu của đề tài

Chương 2
CƠ SỞ LÝ THUYẾT
.I LÝ THUYẾT LIÊN QUAN ĐẾN ĐỀ TÀI
.I.1. Tổng quan hệ thống máy tìm kiếm
Hình 4 Tổng quan hệ thống tìm kiếm
.I.1.1. Giới thiệu
Thuật ngữ search engine thường được dùng để mô tả cho cả crawler-based search
engine và human-powered directory. Đây là hai loại máy tìm kiếm mà chúng thu thập chỉ
mục theo các cách khác nhau.
Crawler-based search engines
Crawler-based search engines chẳng hạn như Google, tạo chỉ mục một cách tự động.
Họ “crawl” và “spider” các trang web và sau đó chúng ta tìm trên hệ thống chỉ mục họ thu
Phan Tấn Luận, Lớp 04T1
8
Cơ sở lý thuyết
thập được. Khi ta thay đổi nội dung của trang web thì crawler-base search engine sẽ có thể
tìm ra các thay đổi và điều đó sẽ ảnh hưởng đến trang web sẽ được xếp hạng như thế nào.
Human-powered directory
Human-powered directory chẳng hạn như Open Directory phụ thuộc vào nhân tố con
người trong khi lập chỉ mục. Ta sẽ gửi một bản mô tả ngắn về trang web của ta đến
human-powered directory, hoặc các nhà biên soạn cho các máy tìm kiếm này sẽ ghi lại
một bản mô tả nội dung trang web mà họ đã xem qua. Kết quả phù hợp khi ta tìm kiếm sẽ
phụ thuộc vào các bản mô tả này. Lập chỉ mục theo dạng này thì khi ta thay đổi nội dung
của trang web thì sẽ chẳng ảnh hưởng gì đến chỉ mục đã được thực hiện. Ngoại trừ những
trang web hay, trang web có nội dung bổ ích và phổ biến thì có khả năng được mô tả lại
thường xuyên.
Ngày nay các máy tìm kiếm không còn phân biệt rõ ràng là crawler-based search
engine hay human-powerd directory. Bởi vì kết quả tìm kiếm trả về dựa trên cả hai dữ
liệu. Chẳng hạn MSN Search trước kia là human-powered directory tuy nhiên ngày nay nó
vẫn hiển thị các kết quả theo crawler-based search engine (được cung cấp bởi công ty

sục” Internet của mình. Crawler tải về nội dung các trang web từ các liên kết đã nhận ban
đầu và truy xuất các liên kết mới nằm trong nội dung của các trang này. Các liên kết mới
này sẽ được nạp vào một trình điều khiển (Crawler Manager). Crawler Manager sẽ quyết
định các liên kết nào sẽ được viếng thăm kế tiếp, Crawler Manager sẽ nạp chúng vào hàng
đợi để chờ xử lý. Các liên kết này sẽ được quản lý trong cơ sở dữ liệu để thuận tiện cho
công việc cập nhật thông tin mới. Trong một lần thực hiện thì các liên kết phải chỉ được
truy cập một lần để tăng khả năng hoạt động và tránh trùng lặp nội dung. Một crawler đi
qua bốn bước cơ bản:
• Bắt đầu từ một hay nhiều liên kết
• Tải nội dung
• Phân tích nội dung, tìm liên kết, đi theo các liên kết
• Theo dõi liên kết, tránh trùng lặp
Có nhiều chế độ làm việc cho crawler thực hiện nhiệm vụ truy tìm thông tin. Các chế
độ được phân biệt theo nhiều cách. Các đặc điểm phân biệt có thể là:
• Batch Mode
• Incremental Mode
Batch mode Crawler sẽ đánh chỉ mục liên tục các trang web và không tải nội dung về
để lưu trữ. Cách này nội dung luôn được cập nhật nhưng chỉ phù hợp cho lượng trang web
nhỏ có giới hạn. Chẳng hạn như mục tiêu của crawler được định ra là thực hiện trên một
số website cụ thể nào đấy. Crawler chỉ có nhiệm vụ liên tục chạy qua các wesiste này để
cập nhật các nội dung mới.
Incremental Mode hoạt động ở chế độ này crawler sẽ không bao giờ xóa các nội dung
lưu trữ. Khi gặp một tài liệu được cho là đã viếng thăm thì crawler sẽ tuân theo chiến lược
cập nhật nội dung đã được cài đặt. Ở chế độ này thì crawler cần phải có kho lưu trữ tài liệu
thật lớn.
• Breadth-first(Tìm kiếm theo chiều rộng)
• Depth-first(Tìm kiếm theo chiều sâu)
Tìm kiếm theo chiều rộng Tìm tất cả các liên kết ở cùng cấp trước khi đi sâu hơn tìm
tất cả các liên kết ở cấp tiếp theo. Cấu trúc dữ liệu cho thuật toán này là hàng đợi vào sau
ra trước.

• Extensible: Crawler cần được thiết kế sao cho dễ dàng mở rộng theo nhiều
hướng. Chẳng hạn như tăng định dạng cho nội dung truy cập hay thêm giao thức
truy cập Internet. Để được như vậy crawler cần được chia thành các phần nhỏ
(các mudole) để tiện cho việc duy trì và nâng cấp.
.4 Vấn đề cơ bản cần giải quyết của Crawler
• Những trang web nào nên được tải về? Tải về tất cả các trang web đó là một
việc làm không tưởng vì vậy cần phải có chiến lược lựa chọn các trang web
quan trọng để tải về. Các trang web được nhiều truy cập, các trang web cung
cấp nội dung có giá trị và phổ biến thì nên được vị trí ưu tiên trong hàng đợi.
• Làm thế nào để cập nhật nội dung? Trên Internet các trang web cập nhật
thường xuyên nội dung của nó. Có trang cập nhật liên tục có trang cập nhật
trong thời gian lâu hơn. Làm thế nào để quyết định các trang web nào nên được
truy cập lại và những trang web nào cần bỏ qua. Cũng như công việc trên ta
Phan Tấn Luận, Lớp: 04T1 11
Cơ sở lý thuyết
không thể cập nhật lại toàn bộ các trang web một cách thường xuyên. Cần phải
có chiến lược lựa chọn.
• Làm thế nào để tải nội dung trang web tối ưu nhất. Trong khi crawler thực
hiện công việc thu thập tài liệu sẽ tiêu tốn tài nguyên như CPU hay tài nguyên
mạng. Nếu crawler chiếm quá nhiều tài nguyên mạng thì nó có thể bị người
quản trị các website loại trừ. Cần phải có chiến lược để nâng cao khả năng hoạt
động sao cho ít tốn tài nguyên nhất.
• Làm thế nào để xử lý song song. Tài liệu trên Internet là vô cùng lớn cần phải
có nhiều crawler hoạt động đồng thời. Làm thế nào để các crawler khác nhau sẽ
không truy cập cùng một website ở các thời điểm khác nhau.
• Khả năng lưu trữ Yêu cầu tổng quan của một công cụ tìm kiếm và sao chép
nội dung web bao hàm tính năng tải file, giao diện trực quan dễ mở rộng, bảo
mật giữa server và trình duyệt web, trình diễn các thành phần động, và phản ảnh
giao diện web một cách chính xác. Mục đích trong việc sao chép một trang web
là phải phản ảnh lại chính xác giao diện của trang web, tải từng hình ảnh, liên

Cơ sở lý thuyết
các liên kết mới thì nó cũng đưa các liên kết này vào hàng đợi. Khi xử lý xong một liên kết
crawler sẽ lấy một liên kết trong hàng đợi ra và tiếp tục truy cập. Công việc sẽ kết thúc khi
không còn một liên kết nào trong hàng đợi.
Như mô tả thì một crawler chỉ cần một hàng đợi là có thể thực thi, Nhưng thông thường
ta dùng bốn hàng đợi để lưu trữ các liên kết để theo dõi các trạng thái của nó.
• Waiting Queue trong hàng đợi này thì các liên kết đang chờ để được xử lý và
liên kết mới sẽ được nạp vào hàng đợi này khi chúng được tìm thấy.
• Running Queue liên kết được chuyển tới hàng đợi này khi crawler bắt đầu xử
lý nó. Một điều quan trọng cần tránh là một liên kết phải chỉ được xử lý một lần
để tránh lãng phí tài nguyên. Khi một liên kết đã được xử lý thì hoặc nó được
chuyển tới Error Queue hoặc Complete Queue.
• Error Queue khi có lỗi xảy ra trong quá trình xử lý liên kết thì liên kết này sẽ
được chuyển tới Error Queue. Một khi đã vào đây thì liên kết sẽ không chuyển
đi đâu nữa và cũng sẽ không được xử lý lần nào nữa.
• Complete Queue khi xử lý thành công thì các liên kết sẽ được chuyển tới đây
và cũng sẽ không chuyển tới đâu nữa.
Một liên kết sẽ chỉ ở một hàng đợi tại một thời điểm. Vì vậy mỗi thời điểm có thể được
coi là mỗi trạng thái của liên kết. Chương trình máy tính thường được mô tả theo biểu đồ
trạng thái trong đó sẽ biểu diễn luồng di chuyển của liên kết từ trạng thái này sang trạng
thái khác.
Hình 5 Biểu đồ trạng thái của một liên kết
.6 Vấn đề cần tránh
• Quá tải mạng và server: Sử dụng robot, một điều tiên quyết phải chú ý đó là tài
nguyên mạng phải lớn. Nhiều robot hoạt động sẽ gây tốn một lượng lớn băng
thông cũng như các tài nguyên mạng khác, tốc độ xử lý, dung lượng bộ nhớ
v.v...
Phan Tấn Luận, Lớp: 04T1 13
Cơ sở lý thuyết
• Cập nhật quá mức: Khó có thể kiểm soát được tốc độ cập nhật mới của trang

trong trường này thì không được viếng thăm. Ví dụ: Disallow: /help có nghĩa là không cho
phép truy cập lẫn /help.html và /help/help/index.html còn Disallow: /help/ thì không cho
phép truy cập /help/help/index.html nhưng cho phép truy cập /help.html. Không có giá trị
nào trong trường Disallow thì có nghĩa tất cả các URL đều được phép truy cập.
Ví dụ:
Một tập tin robot.txt có nội dung như sau sẽ cấm tất cả các robot truy cập vào các URL
bắt đầu bằng /cyberworld/map/, /tmp/ và /foo.html:
# robots.txt for http://www.example.com/
User-agent: *
Phan Tấn Luận, Lớp: 04T1 14
Cơ sở lý thuyết
Disallow: /cyberworld/map/ # This is an infinite virtual URL space
Disallow: /tmp/ # these will soon disappear
Disallow: /foo.html
Một tập tin có nội dung như sau sẽ cấm tất cả các robot truy cập vào nội dung có URL
bắt đầu bằng /cyberworld/map/ ngoại trừ robot có tên cybermapper:
# robots.txt for http://www.example.com/
User-agent: *
Disallow: /cyberworld/map/ # This is an infinite virtual URL space
# Cybermapper knows where to go.
User-agent: cybermapper
Disallow:
Một tập tin nội dung như sau sẽ cấp tất cả các robot truy cập vào bất cứ nội dung nào
trong website:
# go away
User-agent: *
Disallow: /
Thẻ <META …/>
Ta có thể định nghĩa thẻ <META…/> để ngăn không cho robot truy cập vào nội dung
của trang web. Thẻ này thường này bên trong thẻ <head></head> của một trang web. Ví


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status