Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media

61 519 2
Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media LỜI CẢM ƠN Đầu tiên, chúng em xin gởi lời cảm ơn đến Thầy, Cô khoa Công nghệ Thông tin trường Đại học Khoa học Tự nhiên tận tình dạy dỗ, dìu dắt chúng em suốt bốn năm đại học Chúng em cảm ơn thầy Nguyễn Văn Khiết và thầy Bùi Tấn Lộc, đã tận tình hướng dẫn, giúp đỡ, động viên chúng em hoàn thành luận văn Cuối cùng, chúng cảm ơn Ba, Mẹ người thân khích lệ, động viên chúng thời gian học tập, nghiên cứu để có thành ngày Tháng năm 2009 Sinh viên Nguyễn Thanh Nga-Trần Thanh Quỳnh Nguyễn Thanh Nga-0512230 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… ………………………………………………………………………………… …………………………………………………………………………………… Ngày…… tháng……năm 2009 Ký tên Nguyễn Thanh Nga-0512230 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… ………………………………………………………………………………… …………………………………………………………………………………… Ngày…… tháng……năm 2009 Ký tên ĐỀ CƯƠNG CHI TIẾT Tên Đề Tài: Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Giáo viên hướng dẫn: Nguyễn Văn Khiết-Bùi Tấn Lộc Nguyễn Thanh Nga-0512230 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Thời gian thực hiện: Sinh viên thực hiện: Nguyễn Thanh Nga-0512230,Trần Thanh Quỳnh-0512286 Loại đề tài: Xây dựng ứng dụng Nội Dung Đề Tài: (mô tả chi tiết nội dung đề tài, yêu cầu, phương pháp thực hiện, kết đạt được) Kế Hoạch Thực Hiện: Stt Nội dung công việc Thời gian thực hiện Thành viên thực hiện Giai đoạn 1: tìm hiểu thư viện Lucene Tìm hiểu indexing lucene Nguyễn Thanh Nga (Chapter 2) Tìm hiểu các loại Query hỗ trợ việc search lucene Tìm hiểu search và advance search lucene(Chapter và Chapter 5) Tìm hiểu các bộ Analyzer(Chapter 4) Trần Thanh Quỳnh Tìm hiểu việc chuyển đổi các định dạng tại liệu để index và các tool được xây dựng hỗ trợ cho Lucene Giai đoạn 2:xây dựng ứng dụng Nguyễn Thanh Nga-0512230 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media 2.1 Tìm hiểu và sử dụng crawler(robot) tìm hiểu robot Jspider Tìm hiểu robot WinHttrack Tìm hiểu cách crawler Nguyễn Thanh Nga chương trình Nutch Sử dụng WinHttrack để thu thập dữ liệu các trang web nghe nhạc: nhaccuatui.com,vnmusic.com… 10 Sử dụng WinHttrack để thu thập dữ Trần Thanh Quỳnh liệu các trang web dạng phim: topphim.com,clip.vn 2.2 Xây dựng bộ đánh chỉ mục index 11 Phân tích các trang music đã crawl Nguyễn Thanh Nga và Cài đặt các lớp và hàm hỗ trợ việc index dữ liệu 12 Phân tích các trang video đã crawl Trần Thanh Quỳnh và Cài đặt các lớp và hàm hỗ trợ việc index dữ liệu 2.3 xây dựng ứng dụng tìm kiếm 13 Cài đặt các lớp,hàm dựa vào thư Nguyễn Thanh Nga viện Lucene hỗ trợ việc search Nguyễn Thanh Nga-0512230 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media các dữ liệu đã index 14 Thiết kế hệ thống các trang web hỗ Trần Thanh Quỳnh trợ việc tìm kiếm Media 15 Triển khai ứng dụng lên host để lấy Trần Thanh đánh giá từ người dùng,ghi nhận Quỳnh,Nguyễn lỗi và fix lỗi Thanh Nga Giai đoạn 3:báo cáo và nâng cấp ứng dụng 16 Tìm hiểu các bài luận,cách báo Nguyễn Thanh Nga cáo,bố cục báo cáo 17 Tổng hợp báo cáo phần tìm hiểu Trần Thanh Quỳnh thư viện Lucene 18 Tổng hợp báo cáo tìm hiểu Trần Thanh Quỳnh crawler(robot) và các vấn đề gặp phải,phương pháp giải quyết 19 Báo cáo index và search các trang Nguyễn Thanh Nga web thu thập được 20 Báo cáo xây dựng ứng dụng search 21 Tổng hợp lỗi,ghi nhận đánh gia Trần Thanh Quỳnh Nguyễn Thanh ́,thực hiện sửa lỗi và nâng cấp một số chức cho ứng dụng(xây Nga,Trần Thanh Quỳnh dựng Gui cho phần index,xây dựng thệm các trang web dùng để thống kê ,xây dựng database lưu trữ dữ Nguyễn Thanh Nga-0512230 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media liệu cần thiết) Giai đoạn 4: tổng kết,đánh giá 22 Tổng kết toàn bộ quá trình thực Nguyễn Thanh hiện đề tài,lấy đánh giá,nhận xét và kết thúc Nga,Trần Thanh Quỳnh Xác nhận GVHD Ngày… tháng…năm… SV Thực MỤC LỤC ĐỀ CƯƠNG CHI TIẾT Phần : TÌM HIỂU thư viện Lucene .2 Chương 1: TỔNG QUAN VỀ HỆ THỐNG SEARCH ENGINE Các phận cấu thành hệ thống search engine 1.1 Bộ thu thập thông tin – Robot .2 1.2 Bộ lập mục – Index 1.3 Bộ tìm kiếm thông tin – Search Engine Nguyên lý hoạt động Chương 2: THƯ VIỆN LUCENE Giới thiệu thư viện Lucene: Bộ lập mục – Indexing: 2.1 Quy trình đánh mục 2.1.1 Convert to text 2.1.2 Analysis 2.1.3 Wrting index 2.2 Các toán tử đánh mục 2.3 Khuếch đại tài liệu trường ( Boosting Documents and Fields) 2.4 Điều khiển tiến trình đánh chỉ mục .9 2.5 Bộ nhớ trong quá trình đánh chỉ mục : RAMDirectory 11 Nguyễn Thanh Nga-0512230 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media 2.6 Tối ưu hóa việc đánh mục .12 2.7 Tính đồng thời,an toàn tiến tình,ngăn chặn các thực thi .12 Search- Chức tìm kiếm kết quả: .14 3.1 Bộ chuyển đổi câu truy vấn của người dùng : QueryParser .14 3.2 Các toán tử luận lí 16 3.3 Cụm truy vấn(phrase queries) .17 3.4 Sử dụng lớp IndexSearcher 17 3.4.1 Tìm hiểu về Hits 18 3.4.2 Phân trang thông qua Hits .18 3.5 Tìm hiểu về các loại Query 19 3.5.1 Tìm kiếm theo giới hạn : TermQuery 19 3.5.2 Tìm kiếm theo dãy :RangeQuery 19 3.5.3 Tìm kiếm dựa chuỗi :PrefixQuery 20 3.5.4 Kết hợp các truy vấn : BooleanQuery 21 3.6 Tìm kiếm theo cụm: PhraseQuery .21 3.7 Tìm kiếm theo wildcard: WildcardQuery 22 3.8 Tìm kiếm theo những từ giống nhau: FuzzyQuery .22 Bộ phân tích – Analyzer: 22 4.1 Using analyzers 23 4.1.1 Indexing analysis 24 4.1.2 QueryParser analysis .24 4.1.3 Parsing versus analysis : analyzer không phù hợp 25 4.2 Analyzing the analyzer 25 4.2.1 Token gì? 25 4.2.2 TokenStreams uncensored .26 4.2.1 Visualizing analyzers .28 4.3 Sử dụng phân tích tích hợp sẵn Lucene 30 4.3.1 StopAnalyzer 30 4.3.2 StandardAnalyzwer .31 4.4 “Sounds like” querying .31 4.5 Language analysis issues .32 Kỹ thuật tìm kiếm nâng cao: 33 5.1 Sắp xếp theo độ xác 33 5.2 Sắp xếp theo độ thứ tự đánh mục(index order) 34 5.3 Sắp xếp theo Trường (Field) .34 5.4 Đảo ngược thứ tự đánh mục 34 5.5 Sắp xếp theo nhiều trường khác nhau(multiple fields) .34 Chuyển đổi kiểu liệu khác dạng liệu chung 35 6.1 Handling rich-text document .35 6.2 Indexing XML .36 Nguyễn Thanh Nga-0512230 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media 6.3 Indexing DPF document 36 6.4 Indexing an HTML document .37 6.5 Indexing a Microsoft Word document 37 6.5.1 Using POI .37 6.5.2 Using TextMining.org’s API 37 6.6 Indexing an RTF document 38 6.7 Indexing a plain-text document 38 6.8 Creating a document – handling framwork 38 6.8.1 FileHandler interface .39 6.8.2 Extension FileHandler 40 6.8.3 FileIndexer drawbacks and how to extend the framework 40 6.9 Other text-extraction tools 41 Phần : THIẾT KẾ VÀ CÀI ĐẶT 41 Chương 1: THU THẬP THÔNG TIN 42 Giới thiệu Crawler .42 Crawler sử dụng .43 2.1 Các phần mềm chép tài nguyên website .43 2.2 Nutch 43 2.3 Jspider 44 2.4 Teleport Httrack 44 Hướng dẫn sử dụng crawler lựa chọn HTTrack 45 Chương 2: xây dựng bộ đánh chỉ mục index 51 Chương 3: xây dựng ứng dụng search 51 Chương 4: CÁC MODULE ,PACKAGE, LỚP CHÍNH CỦA CHƯƠNG TRÌNH 52 Phần : KẾT QUẢ, ĐÁNH GIÁ VÀ HƯỚNG PHÁT TRIỂN 52 DANH SÁCH CÁC BẢNG 52 DANH SÁCH CÁC HÌNH VẼ .52 TÀI LIỆU THAM KHẢO .52 I Sách, ebook: 52 II Luận văn, luận án 52 III Bài báo 52 IV Website 52 Nguyễn Thanh Nga-0512230 Trần Thanh Quỳnh- 0512286 Tìm hiểu Search Engine xây dựng ứng dụng minh hoạ cho Search Engine tiếng Việt MỞ ĐẦU Trong thời đại ngày nay, thông tin nhu cầu thiết yếu người lĩnh vực Mỗi phút trôi qua hàng triệu triệu trang web đẩy lên nhằm làm giàu nguồn tài nguyên vô tận Tuy nhiên tồn nghịch lý dù ví thư viện toàn cầu, internet không thoả mãn nhu cầu thông tin người Xung quanh vấn đề có nhiều nguyên nhân quan trọng thông hiểu người công cụ tìm kiếm mạng – search engine – chưa đạt đến mức giao tiếp tốt với Hơn nữa, search engine mang đặc thù ngôn ngữ mà hiển thị search engine Tiếng Việt phải giải vấn đề đặc trưng Tiếng Việt, cụ thể vấn đề bảng mã, ngữ pháp Tiếng Việt Nếu ta hiểu cách thức search engine tổ chức thông tin, thực thi câu truy vấn đặc trưng ngôn ngữ mà search engine tiếp cận ta tối ưu hoá hội nhận thông tin hữu ích Đây mục tiêu luận văn Lê Thuý Ngọc - 0012745 Đỗ Mỹ Nhung - 0012624 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media thư viện hàm hỗ trợ rút trích text hỗ trợ phiên Word 6/95 mà POI không hỗ trợ được, 6.6 Indexing an RTF document Với Rich Text Format (RTF) sử dụng thư viện có sẵn gói Java chuẩn , chúng ẩn javax.swing.text javax.swing.rtf Các text lấy từ file RTF chuyển đến Lucene trở thành Field.Unstored Cuối DocumentHandler xử lý phần file plain-text 6.7 Indexing a plain-text document Cuối phần thực thi DocumentHander cho plain-text , phần kết tạo frameword cho parsing indexing document cho phần định dạng khác 6.8 Creating a document – handling framwork Phần nói kết nối phần phức tạp khác thành khối thống , thi hành parsing vài định dạng liệu khác framwork Cấu trúc gồm có DocumentHandle interface kèm theo FileHandlerException thực thi với lớp ExtensionFileHandle Bảng tóm tắt Nguyễn Thanh Nga-0512230 38 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Framwork components : 6.8.1 FileHandler interface FileHandler interface đơn giản giống DocumentHandle Tuy nhiên , điểm khác DocumentHandle dùng giống InputStream để làm loại liệu đưa vào , FileHandler interface định nghĩa File loại liệu đưa vào ,điều làm việc dễ dàng Nguyễn Thanh Nga-0512230 39 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media 6.8.2 Extension FileHandler ExtensionFileHandler thực thi với FileHandler interface trả Lucene Document chung FileHandler thực thi với gói , ngoại lệ thông qua FileHandlerException ExtensionFileHandler thực thi FileHandler interface Khi thực thi phương thức getDocument(File) sử dụng phần mở rộng file để suy loại file gọi hàm thi hành parser thích hợp Bởi tất phần thực thi parser thuộc phần chung DocumentHandler interface, ExtensionFileHandler dò đối tượng File đưa vào gói FileInputStream biết cần phải xử lý 6.8.3 FileIndexer drawbacks and how to extend the framework Framework bao parser xử lý loại file đưa vào :XML, PDF, HTML, Microsoft Word, RTF , Plain text Nhưng cần index tạo file tìm kiếm với loại file mà framwork không hỗ trợ mở rộng framwork theo bước sau: Nguyễn Thanh Nga-0512230 40 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media - Viết parser cho loại file mong muốn thực thi DocumentHandler interface Thêm class parser đến file handler.properties , ánh xạ thích hợp với phần mở rộng loại file mong muốn Vẫn sử dụng FileIndexer 6.9 Other text-extraction tools Trong phần ta thấy diện text rút trích từ , phần indexing loại định dạng liệu phổ biến PHẦN : THIẾT KẾ VÀ CÀI ĐẶT     Ngôn ngữ lập trình Công cụ lập trình Web Server Hệ quản trị CSDL Nguyễn Thanh Nga-0512230 : Java, HTML : NetBean 6.5, DreamWeaver CS3 : Apache : Mysql 41 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Chương 1: THU THẬP THÔNG TIN Để xây dựng ứng dụng Search Engine phải cần có thu thập thông tin gọi crawler (bọ tìm kiếm , web spider hay web robot) Giới thiệu Crawler Crawler chương trình tự động tìm kiếm tài nguyên internet trang web , hình ảnh , tài liệu word , pdf hay Postscripts, cho phép máy tìm kiếm đánh số sau Quá trình thực gọi Web crawling hay spidering, nhiều công cụ tìm kiếm giới sử dụng spidering để cập nhật kho liệu website Chẳng hạn google dùng để lấy thông tin website ồi cập nhật vào sở liệu giúp người dùng search trang theo ý muốn Web crawler loại gọi bot (là tác tử thực tự động, nghĩa giống spider) Đại loại, danh sách địa URL gọi seeds (hạt giống) Nó vào địa lọc thông tin tìm địa URL khác thêm chúng vào danh sách địa duyệt qua gọi crawl frontier Sau lại lặp lại trình duyệt qua URL Cứ thế, thể lần qua nhiều địa website thu thập nhiều nội dung khác giúp ta dễ dàng tìm kiếm thông tin cần Một số bọ tìm kiếm phổ biến máy tìm kiếm : - Googlebot Google - MSNBot MSN - Slurp Yahoo - Scooter Alta Vista - Baidu Baidu Vì điều cần thiết để tạo nên cỗ máy tìm kiếm tuyệt hảo có crawler thông minh khả cập nhật liệu nhanh tốt khối lượng dự trữ cực lớn Sau tìm hiểu số crawler mã nguồn mở có mạng tìm JSpider, Crawler Nutch Yêu cầu để thực luận văn tìm sử dụng đưowjc crawler có khả download file html từ website nhạc để lấy link media file html dùng để indexing cho Search Enginer Vì crawler yếu tố quan trọng chiến lược tìm kiếm máy tìm kiếm danh tiếng Google, yahoo , Baidu… khả dùng crawler cỗ máy tìm kiếm , mà việc index search phải phụ thuộc vào crawler thu thập liệu Hiện có Nguyễn Thanh Nga-0512230 42 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media nhiều phần mềm crawler bán có quyền bên cạnh phần mềm mã nguồn mở phong phú đa dạng giới thiệu Aspseek , arachnode.net ,DataparkSearch ,GNU Wget, GRUB , Heritrix , HTTrack ,ICDL Crawler , mnoGoSearch ,Nutch , Pavuk , YaCy … Crawler sử dụng Yêu cầu đặt cho crawler sử dụng luận văn có khả tải hầu hết trang site media internet máy tính cục dạng file html , có khả resum bị ngắt kết nối download chừng, có chức redownload liệu trang web bị thay đổi, có chức hẹn tự động cập nhật lại liệu Jspider sau tìm hiểu ví dụ không thấy khả quan trình tìm kiếm download html từ trang web media bamboo.com , nhac8.com , nhaccuatui.com, www3.nhac.vui.vn, mp3.zing.vn, vnmusic.com, … Mã nguồn mở Nutch tìm hiểu thấy khó để tách riêng liệu tải làm liệu để làm đầu vào để indexing riêng , nhiều phần mềm copy website sử dụng không đáp ứng yêu cầu Ngoài khảo sát chương trình khác : Webcopier, WebRipper_1.32 free , WebsiteWatcher4.42, WebDataExtractor_wde , Nutch, Jspider , telepot.pro 2.1 Các phần mềm chép tài nguyên website Hiện có nhiều chương trình giúp tải website với thành phần hình ảnh, file văn bản, file html ví dụ phần mềm webcopier (http://www.maximumsoft.com/ ) , webRipper (http://download.cnet.com/WebRipper/3000-2071_4-10457425.html ) , WebsiteWatcher(http://www.lisisoft.com/free-download-version/8452websitewatcher.html ), webDataExtractor (http://redpiranha.sourceforge.net/doc/net/firstpartners/rp/back/extractor/WebDataExtractor.ht ml ) khả chép nguyên website theo yêu cầu máy local Đối với trang diễn đàn chương trình có khả thu thập tốt thử sử dụng crawler website media đem lại kết không khả quan, dễ bị ngắt kết nối, liệu thu thập nên không sử dụng 2.2 Nutch Mã nguồn mở: http://lucene.apache.org/nutch/ Nguyễn Thanh Nga-0512230 43 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Hướng phát triển tìm kiếm phần mềm crawler tìm phần mềm mã nguồn mở dễ sử dụng , có khả thu thập liệu tốt với website media Phần mềm crawler ứng dụng Nutch phát triển tác giả Lucence phần mềm mã nguồn mở Đã dùng thu thập số website media thu số lượng liệu lớn liệu thu thập Nutch tổ chức lưu trữ liệu dùng Hadoop sử dụng công nghệ GoogleFS, trình index trình search Ban đầu hướng phát triển dùng Nutch trình tìm hiểu phân tích mã nguồn Nutch thấy thời gian để phân rã sử dụng mã nguồn để viết ứng dụng riêng theo yêu cầu riêng không làm kịp khoảng thời gian đặt cho phần tìm hiểu sử dụng crawler Vì vậy, trước mắt cần tìm crawler khác thu thập liệu tốt Hướng phát triển lâu dài sử dụng Nutch để viết lại crawler riêng để tạo chức theo yêu cầu đặt theo ý muốn 2.3 Jspider Mã nguồn mở : http://j-spider.sourceforge.net/ Mã nguồn mở Jspider viết ngôn ngữ java, khả tìm kiếm liệu website media thu liệu tốt hạn chế chương trình không hỗ trợ chức update lưu lại trạng thái download bị ngắt kết nối ( continue interrupted download) 2.4 Teleport Httrack HTTrack Teleport đáp ứng yêu cầu đặt có khả download website media tốt, có chức update, có chức tiếp tục download project bị ngắt kết nối chừng, có khả link tới website liên quan (khả spider), giới hạn định dạng download,có khả tải website máy local phiên thứ với trang web yêu cầu - HTTrack : http://en.wikipedia.org/wiki/HTTrack HTTrack giới thiệu wiki , http://www.httrack.com/ website giới thiệu mã nguồn Đây chương trình mã nguồn mở viết ngôn ngữ C - Teleport : http://www.tenmax.com/teleport/pro/home.htm chương trình hãng Tennyson Maxwell Information Systems Những yêu cầu đặt crawler đáp ứng tốt Teleport phần mềm thương mại nên lâu dài việc lựa chọn HTTrack tốt HTTrack phần mềm mã nguồn mở viết ngôn ngữ C mở rộng chức cần thiết Nguyễn Thanh Nga-0512230 44 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Hướng dẫn sử dụng crawler lựa chọn HTTrack Download phần mềm : http://download.httrack.com/httrack-3.43-5.exe Ở lần chạy đầu tiên, HTTrack yêu cầu thiết lập Proxy ngôn ngữ thức sử dụng chương trình Nên OK để đồng ý với hiệu chỉnh mặc định bắt đầu trình tải website mong muốn theo bước sau: • Bước 1: Tạo project mới: Để thuận tiện cho người sử dụng, HTTrack lưu tất thông số trình tải website cần tải, nơi lưu site máy tính, scan rules vào file project có dạng *.whtt Vì nên dễ dàng quản lý nhiều tác vụ tải site khác nhau, mở lại hay nâng cấp website tải Trên cửa sổ chương trình, bấm Next nhập tên project vào khung Project name Sau đó, chọn nơi cần lưu website máy cách bấm vào nút hình dấu cộng (+) Lưu ý, nên đặt tên project theo địa website cần tải, chẳng hạn mp3.zing.com (www.mp3.zing.com) để tiện phân biệt với project khác sau Ở mục Action với project thiết lập dùng năm yêu cầu ban đầu : • Download web site(s) (Mirroring Mode) Chủ yếu dùng chức • Download web site(s) + questions ( Interactive Wizard Mode questions) • Get separated file ( File download) • Download all sites in pages (Link list Mode) • Test links in pages(bookmark test) (Link Testing Mode) Nguyễn Thanh Nga-0512230 45 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Next để tiếp tục qua bước • Bước 2: Thiết lập thông số cần thiết Đây bước quan trọng toàn thao tác định website tải có cách thức tải Đầu tiên, nhập vào địa website khung Web Addresses (URL), ví dụ www.mp3.zing.com , thêm link khác muốn.Nếu website cần tải có yêu cầu đăng nhập (Login), bấm nút Add URL điền vào thông số cần thiết mật mã tên tài khoản Nguyễn Thanh Nga-0512230 46 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Sau hoàn tất phần địa website cần tải, bạn bấm tiếp vào nút Set options để có thêm số hiệu chỉnh khác • Bộ lọc định dạng: Như nói trên, HTTrack cho phép thiết lập lọc giúp xác định dạng file cần tải Để thực điều hộp thoại vừa ra, bạn chuyển qua thẻ Scan Rules, sau bấm chọn vào dạng file cho sẵn chương trình gif,jpg,png muốn tải dạng file hình ảnh; zip,tar,tgz với dạng file nén mov,mpg,mpeg file phim nhạc số Lưu ý thiết lập thêm dạng file khác cách nhập trực tiếp vào khung theo công thức sau: +*.dạng file để thêm vào dạng file cần tải -*.dạng file để ngăn không cho HTTrack tải dạng file Ví dụ công thức +*.pdf -*.txt có nghĩa lấy Nguyễn Thanh Nga-0512230 47 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media file pdf bỏ file txt • Spider Trong phần hiệu chỉnh option có phần spider để quét trang web có liên kết với website hành Phần mục tiêu đặt không yêu cầu đặt lên đầu , với mức độ luận văn , chi phí thời gian không đáp ứng nhiều, download trực tiếp website yêu cầu Nguyễn Thanh Nga-0512230 48 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Trong ứng dụng cho mục đích phục vụ cho đề tài khóa luận giới hạn vật chất cho phép nên sử dụng crawler website định sẵn , không thực chức spider • Browser ID: Phần cho phép chọn kiểu comment liệu tải tự tạo định dạng liệu riêng - %s : chèn đường link trang html lấy - • Các chức khác: sử dụng mặc định • Bước 3: Các thao tác với website tải Nếu chuyện suôn sẻ, có website mong muốn máy tính Cần biết website cho phép bạn tải xuống lý bảo mật Để duyệt website vừa tải, mở thư mục lưu site bấm đúp chuột vào file index.html HTTrack có thao tác hữu dụng hộp danh sách Action bước mà bạn nên tìm hiểu là: • Continue interrupted download: Tiếp tục lại trình tải site gặp trục trặc phải ngưng chừng • Update esixting download: Đồng hóa website máy tính với website tương ứng Internet Các bước bước thực cấu hình cho chương trình crawler để tạo projet thu thập liệu website media Nguyễn Thanh Nga-0512230 50 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Chương 2: XÂY DỰNG BỘ ĐÁNH CHỈ MỤC INDEX Chương 3: XÂY DỰNG ỨNG DỤNG SEARCH Nguyễn Thanh Nga-0512230 51 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Chương 4: CÁC MODULE ,PACKAGE, LỚP CHÍNH CỦA CHƯƠNG TRÌNH PHẦN : KẾT QUẢ, ĐÁNH GIÁ VÀ HƯỚNG PHÁT TRIỂN DANH SÁCH CÁC BẢNG DANH SÁCH CÁC HÌNH VẼ TÀI LIỆU THAM KHẢO I Sách, ebook: II Luận văn, luận án III Bài báo IV Website Nguyễn Thanh Nga-0512230 52 Trần Thanh Quỳnh- 0512286 [...]... Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Lucene là một thư viện mã nguồn mở, được phát triển bởi Dough Cutting (hiện đang làm việc cho Yahoo) Thư viện này cung cấp các hàm cơ bản hỗ trợ cho việc đánh chỉ mục và tìm kiếm thông qua các hàm API Lucene có thể index và search các loại dữ liệu nào có thể thể hiện được thông tin như : doc, pdf, html … Từ thư viện Lucene này,.. .Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Phần 1 : TÌM HIỂU THƯ VIỆN LUCENE Chương 1: TỔNG QUAN VỀ HỆ THỐNG SEARCH ENGINE 1 Các bộ phận cấu thành hệ thống search engine 1.1 Bộ thu thập thông tin – Robot Robot là một chương trình tự động duyệt qua các cấu trúc siêu liên... dùng để search trong Lucene API : 3.1 Bộ chuyển đổi câu truy vấn của người dùng : QueryParser Hai yêu cầu quan trọng trong ứng dụng tìm kiếm đòi hỏi là : chuyển đổi câu truy vấn và truy xuất thông tin trả về Hầu hết các phương thư c Lucene đòi hỏi đối Nguyễn Thanh Nga-0512230 14 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media tượng... Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media • Giữ đối tượng Hits và IndexSearcher trong khi người dùng chuyển kết quả tìm kiếm • Thư c hiện truy vấn lại mỗi khi người dùng chuyển đến trang mới Truy vấn lại thư ̀ng được dùng hơn và là giải pháp tối ưu hơn.Việc này đòi hỏi phải lưu trữ trạng thái người dùng.Trong ứng dụng web,nơi... IndexSearcher,ta sẽ gọi phương thư c search để thư c hiện việc tìm kiếm.Có ba phương thư c chính để tìm kiếm.Song ta chủ yếu sử dụng phương thư c search( Query),tức tham số là câu truy vấn Query Nguyễn Thanh Nga-0512230 17 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Như ta đã thấy,các phương thư c tìm kiếm này đều trả về là các... tài liệu : Lucene không hỗ trợ ta thực hiện việc cập nhật tài liệu , thay vào đó ta sẽ xóa bỏ tài liệu và sau đó thêm lại tài liệu mới thay thế Chú Nguyễn Thanh Nga-0512230 8 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media ý rằng để đảm bảo tốc độ thư c thi thì tốt nhất việc xóa bỏ và thêm tài liệu mới nên thư c hiện... indexed thì là các terms có thể dùng để tìm kiếm Nguyễn Thanh Nga-0512230 23 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Lucene không tạo ra kết quả phân tích có thể nhận thấy được đối với khách hàng (end user) Terms được tách ra từ đoạn văn bản nguyên bản để indexing và tìm phù hợp trong suốt trong quá trình searching Khi searching với QueryParser quá trình... và tổ chức thành cơ sở dữ liệu riêng để có thể tìm kiếm trên đó một cách nhanh chóng, hiệu quả Hệ thống chỉ mục là danh sách các từ khoá, chỉ rõ các từ khoá nào xuất hiện ở trang nào, địa chỉ nào Nguyễn Thanh Nga-0512230 2 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media 1.3 Bộ tìm kiếm thông tin – Search Engine Search engine là cụm từ dùng chỉ toàn bộ hệ thống... Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media Trong trường hợp mà dữ liệu được index đã được sắp xếp theo thư tự giống kiểu từ điển,thì việc tìm kiếm theo dãy tỏ ra hiệu quả hơn cả.RangeQuery của Lucene cho phép ta tìm kiếm những mục nằm trong giới hạn đầu và cuối của dãy cần tìm  Nếu biểu thư c truy vấn có dạng... mục phục vụ cho nhu cầu tìm kiếm thông tin Bởi vì thông tin trên mạng luôn thay đổi nên robot phải liên tục cập nhật các site cũ Mật độ cập nhật phụ thuộc vào từng hệ thống search engine Khi search Nguyễn Thanh Nga-0512230 3 Trần Thanh Quỳnh- 0512286 Tìm hiểu thư viện Lucene và xây dựng ứng dụng Search Media engine nhận câu truy vấn từ user, nó sẽ tiến hành phân tích, tìm trong cơ sở dữ liệu

Ngày đăng: 09/04/2016, 02:36

Từ khóa liên quan

Mục lục

  • ĐỀ CƯƠNG CHI TIẾT

  • Phần 1 : TÌM HIỂU thư viện Lucene

    • Chương 1: TỔNG QUAN VỀ HỆ THỐNG SEARCH ENGINE

      • 1. Các bộ phận cấu thành hệ thống search engine

        • 1.1 Bộ thu thập thông tin – Robot

        • 1.2 Bộ lập chỉ mục – Index

        • 1.3 Bộ tìm kiếm thông tin – Search Engine

        • 2. Nguyên lý hoạt động

        • Chương 2: THƯ VIỆN LUCENE

          • 1. Giới thiệu thư viện Lucene:

          • 2. Bộ lập chỉ mục – Indexing:

            • 2.1 Quy trình đánh chỉ mục

              • 2.1.1 Convert to text

              • 2.1.2 Analysis

              • 2.1.3 Wrting index

              • 2.2 Các toán tử đánh chỉ mục cơ bản

              • 2.3 Khuếch đại các tài liệu và các trường ( Boosting Documents and Fields)

              • 2.4 Điều khiển tiến trình đánh chỉ mục

              • 2.5 Bộ nhớ trong trong quá trình đánh chỉ mục : RAMDirectory

              • 2.6 Tối ưu hóa việc đánh chỉ mục

              • 2.7 Tính đồng thời,an toàn tiến tình,ngăn chặn các thực thi

              • 3. Search- Chức năng tìm kiếm kết quả:

                • 3.1 Bộ chuyển đổi câu truy vấn của người dùng : QueryParser

                • 3.2 Các toán tử luận lí

                • 3.3 Cụm truy vấn(phrase queries)

                • 3.4 Sử dụng lớp IndexSearcher

                  • 3.4.1 Tìm hiểu về Hits

                  • 3.4.2 Phân trang thông qua Hits

Tài liệu cùng người dùng

Tài liệu liên quan