Tài liệu Nghiên cứu về khai phá dữ liệu web và ứng dụng xây dựng website tích hợp thông tin

  • Số trang: 21 |
  • Loại file: PDF |
  • Lượt xem: 419 |
  • Lượt tải: 0
nganguyen

Đã đăng 34345 tài liệu

Mô tả:

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG ------------------------------------------ NGUYỄN HUY KIÊN NGHIÊN CỨU VỀ KHAI PHÁ DỮ LIỆU WEB VÀ ỨNG DỤNG XÂY DỰNG WEBSITE TÍCH HỢP THÔNG TIN NGÀNH : TRUYỀN DỮ LIỆU VÀ MẠNG MÁY TÍNH MÃ SỐ : 60.48.15 TÓM TẮT LUẬN VĂN THẠC SỸ NGƯỜI HƯỚNG DẪN KHOA HỌC PGS.TS. ĐẶNG VĂN CHUYẾT HÀ NỘI 2012 Luận văn được hoàn thành tại: HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG Người hướng dẫn khoa học: PGS.TS. Đặng Văn Chuyết Phản biện 1:………………………………………………… Phản biện 2: ………………………………………………… Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ Bưu chính Viễn thông Vào lúc: ....... giờ ....... ngày ....... tháng ....... .. năm ............... Có thể tìm hiểu luận văn tại: - Thư viện của Học viện Công nghệ Bưu chính Viễn thông 1 TÓM TẮT LUẬN VĂN 1. Giới thiệu Trong những năm gần đây, sự phát triển vượt bậc của công nghệ thông tin đã làm tăng số lượng giao dịch thông tin trên mạng Internet một cách đáng kể đặc biệt là thư viện điện tử, tin tức điện tử. Do đó mà thông tin, tin tức xuất hiện trên mạng Internet cũng tăng theo với một tốc độ chóng mặt và liên tục có sự thay đổi. Với lượng thông tin đồ sộ như vậy, một yêu cầu lớn đặt ra đối với chúng ta là làm sao tổ chức và tìm kiếm thông tin có lợi và hiệu quả nhất. Việc thu thập, phân loại và trích xuất thông tin thông qua các website khác nhau hiện nay đang có nhu cầu rất lớn trong thực tế. Nhưng một thực tế là khối lượng thông tin quá lớn, việc thu thập và phân loại dữ liệu thủ công là điều rất khó khăn và phức tạp. Hướng giải quyết là xây dựng một hệ thống website cho phép thu thập và phân loại các thông tin trên. Từ yêu cầu thực tiễn đó, em đã chọn đề tài: “ Nghiên cứu về khai phá dữ liệu web và ứng dụng xây dựng website tích hợp thông tin” nhằm tìm hiểu và xây dựng các quá trình tìm kiếm rút trích, bóc tách thông tin từ nhiều trang web khác nhau. Qua đó xây dựng một website thông tin để thu thập, đánh giá thông tin tự động trên Internet phục vụ cho người đọc có thể nắm bắt được thông tin một cách dễ dàng, nhanh chóng và tiết kiệm thời gian. 2 Mục tiêu của luận văn nhằm tìm hiểu và nghiên cứu cách thức, quá trình rút trích và bóc tách thông tin tự động từ nội dung của các website trên internet, qua đó xây dựng một website tổng hợp thông tin. Phương pháp nghiên cứu của luận văn, nghiên cứu lý thuyết về khai phá dữ liệu, khai phá dữ liệu web, lý thuyết về rút trích thông tin, các phương pháp rút trích. Phân tích các ưu nhược điểm của từng phương pháp, kết hợp với các kĩ năng xây dựng một trang web lấy tin tức tự động. 2. Nội dung Ngoài Phần Mở đầu, Phần Kết luận và các Phụ lục, nội dung luận văn được chia thành 4 chương chính: Chương 1 - Tổng quan về khai phá dữ liệu web Chương này giới thiệu những nội dung cơ bản nhất, cung cấp một cái nhìn khái quát về khai phá dữ liệu, khai phá dữ liệu web, các hướng tiếp cận và ứng dụng của khái phá dữ liệu. 1.1 Khai phá dữ liệu 1.1.1 Các dạng dữ liệu 1.1.1.1 Fulltext 1.1.1.2 Hypertext 1.1.2 Các bài toán thông dụng trong Khai phá dữ liệu 1.2 Khai phá dữ liệu web 1.2.1 Dữ liệu Web và nhu cầu khai thác thông tin 3 Chúng ta có thể hiểu rằng khai phá Web như là việc trích chọn ra các thành phần được quan tâm hay được đánh giá là có ích cùng các thông tin tiềm năng từ các tài nguyên hoặc các hoạt động liên quan tới World-Wide Web. Một cách trực quan có thể quan niệm khai phá Web là sự kết hợp giữa Khai phá dữ liệu, Xử lý ngôn ngữ tự nhiên và Công nghệ Web: Khai phá web = Khai phá dữliệu + Xử lý ngôn ngữ tự nhiên + World Wide Web. 1.2.1.1 Khai phá nội dung Web Khai phá nội dung web tập trung vào việc khám phá một cách tự động nguồn thông tin có giá trị trực tuyến. Khai phá nội dung web có thể được tiếp cận theo 2 cách khác nhau: Tìm kiếm thông tin và khai phá dữ liệu trong cơ sở dữ liệu lớn. Khai phá dữ liệu đa phương tiện là một phần của khai phá nội dung Web, nó hứa hẹn việc khai thác được các thông tin và tri thức ở mức cao từ nguồn đa phương tiện trực tuyến rộng lớn. Khai phá nội dung trang Web gồm hai phần: a. Web Page Content b. Search Result 1.2.1.2 Khai phá văn bản Web Khai phá văn bản Web là việc sử dụng kỹ thuật khai phá dữ liệu đối với các tập văn bản để tìm ra tri thức có ý nghĩa tiềm ẩm trong nó. Dữ liệu của nó có là dữ liệu có cấu trúc hoặc không cấu trúc. Kết quả khai phá không chỉ là trạng thái chung của mỗi tài liệu 4 văn bản mà còn là sự phân loại, phân cụm các tập văn bản phục vụ cho mục đích nào đó. 1.2.2  Đặc điểm của dữ liệu Web Web dường như quá lớn để tổ chức thành một kho dữ liệu phục vụ Khai phá dữ liệu.  Độ phức tạp của trang Web lớn hơn rất nhiều so với những tài liệu văn bản truyền thống khác.  Web là một nguồn tài nguyên thông tin có độ thay đổi cao  Web phục vụ một cộng đồng người dùng rộng lớn và đa dạng  Chỉ một phần rất nhỏ của thông tin trên Web là thực sự hữu ích 1.2.3 Phân cụm dữ liệu web Sự phát triển của Internet dẫn đến nhu cầu tìm kiếm, khai thác, tổ chức, truy cập và duy trì thông tin đối với người sử dụng thường xuyên hơn. Những người sử dụng các máy tìm kiếm Web thường bị bắt buộc xem xét chọn lọc thông qua một danh sách thứ tự dài của các mẩu thông tin văn bản được trả trở lại bởi các máy tìm kiếm. Yêu cầu phân loại tài liệu, cụ thể hơn là tài liệu Web trở thành bài toán cho các nhà khoa học nghiên cứu và giải quyết. Các chương sau nghiên cứu tiếp các vấn đề liên quan tới quá trình trích lọc thông tin ở trên. Chương 2 - Giới thiệu về rút trích thông tin Nội dung của chương này trình bày các phương pháp sử dụng trong rút trích thông tin từ web và phân tích ưu khuyết điểm 5 của các phương pháp này. Qua đó phân tích kiến trúc trang web và cách trình bày các bộ dữ liệu từ cơ sở dữ liệu lên trang web, nêu ra các ưu khuyết điểm làm tiền đề xây dựng phương pháp của luận văn. 2.1 Khái niệm 2.2 So sánh rút trích thông tin và tìm kiếm thông tin 2.3 Tổng quan về rút trích thông tin trên trang web 2.3.1 Tổng quan Mô hình hệ thống rút trích thong tin trên trang web với các thành phần cụ thể như sau:  Wrapper Generator: hỗ trợ người dùng xây dựng các wrapper  Wrapper executor.  Wrapper repository.  Central Control.  Data transformation.  Data delivery. Luận văn này tập trung vào cách thức rút trích dữ liệu tương ứng với thành phần Wrapper generator trong hệ thống rút trích thông tin trên web. Nội dung bên dưới chỉ mô tả và phân tích các phương pháp được ứng dụng trong thành phần này. 2.3.2 Phương pháp bán tự động Các hệ thống sử dụng phương pháp này cần hỗ trợ người dùng lập trình với ngôn ngữ do hệ thống tự định nghĩa hoặc giao diện tương tác thân thiện. Thông qua chỉ dẫn của người dùng để hướng 6 dẫn hệ thống rút trích thông tin cách thao tác trên web để đến được trang chứa dữ liệu cần rút trích. Sau đó, người dùng cần phải chỉ rõ các đối tượng cần rút trích và gán nhãn cho các thuộc tính của các đối tượng này. Phương pháp này cho độ chính xác cao nhất tuy nhiên cần sự theo dõi và giám sát của con người. Đồng thời phương pháp này có hiệu quả thấp khi cấu trúc của trang web thường xuyên thay đổi. Có rất nhiều loại trang web và nhiều cách tổ chức và trình bày khác nhau nên tốn nhiều thời gian và công sức để xây dựng từng chỉ dẫn riêng cho mỗi loại trang web. 2.3.3 Phương pháp dựa trên cấu trúc HTML DOM của trang web Phương pháp phân tích cấu trúc HTML DOM khá hiệu quả, ít có nội dung thừa và giải quyết được vấn đề xử lý các thông tin trùng nhau, bằng cách phân tích và lấy dữ liệu từ một website có lượng thông tin tương đối đầy đủ. Tuy nhiên mỗi website lại có định dạng khác nhau. Việc áp dụng phương pháp này thành công trên một website này không có nghĩa là thành công trên website khác. Và cách lấy dữ liệu bằng phương pháp phân tích mã html nên chỉ có tác dụng trong thời điểm hiện tại và chương trình có thể sẽ không hoạt động được khi website thay đổi source code. 2.3.4 Phương pháp sử dụng cách thức trình bày của trang web 2.4 Hệ thống rút trích thông tin từ các trang web 2.4.1 Khái niệm 2.4.2 Phân loại hệ thống rút trích thông tin từ web 7 Dựa vào mức độ can thiệp của con người trong quá trình rút trích thông tin, các hệ thống rút trích thông tin có thể được chia ra làm 4 loại: thủ công, có giám sát, bán giám sát và không giám sát. Trong đó, các hệ thống hoàn toàn tự động, không có sự can thiệp của con người đang được các nhà nghiên cứu quan tâm nhất. Dựa vào tầng dữ liệu được rút trích: một trang web sẽ có nhiều trang HTML, một trang HTML sẽ có nhiều record và một record sẽ có nhiều thuộc tính. Do đó, dựa vào kết quả thông tin rút trích được ở tầng nào, các hệ thống rút trích được chia ra làm 4 loại: tầng thuộc tính (attribute), tầng record, tầng trang HTML (page) và tầng trang web (site). Hiện tại các hệ thống xử lý ở tầng thuộc tính và record chiếm đa số. Và cho đến nay, vẫn chưa thấy xuất hiện các hệ thống rút trích thông tin ở tầng site. Dựa vào các phương pháp rút trích thông tin, các hệ thống rút trích thông tin cũng được chia thành 3 dạng:  Các hệ thống dựa trên các phương pháp thủ công: sử dụng các phương pháp gán nhãn, các cách lấy thông tin trực tiếp từ cơ sở dữ liệu hoặc từ các dịch vụ web (web service).  Các hệ thống dựa trên các phương pháp heuristic: các phương pháp thống kê, tập luật, sử dụng các mẫu thông tin, dựa vào cấu trúc cây… được sử dụng để rút trích thông tin.  Các hệ thống dựa trên các phương pháp học: sử dụng các phương pháp mô hình Markov, ngữ nghĩa, học trên cấu trúc cây,… để giúp cho các hệ thống hiểu và rút trích thông tin chính xác hơn. 8 2.4.3 Khảo sát một số ứng dụng rút trích thông tin từ web Rút trích thông tin trên web là một đề tài quan trọng từ giúp chuyển đổi nội dung trang web theo hình thức trình bày phục vụ người duyệt web thành các nguồn thông tin được chuẩn hóa phục vụ nhiều nhu cầu đặc biệt như so sánh sản phẩm, tìm kiếm thông minh,... Có rất nhiều phương pháp từ đơn giản như dựa trên xử lý chuỗi HTML của trang web đến phân tích cây HTML DOM của trang web, khai thác hành động của người duyệt web, phân tích cách trình bày. Các phương pháp này cũng có các tiếp cận với nguồn dữ liệu cũng như sự can thiệp của con người khác nhau như: bán tự động phân tích cách trình bày. Các phương pháp này cũng có các tiếp cận với nguồn dữ liệu cũng như sự can thiệp của con người khác nhau như: bán tự động, rút trích tự động sử dụng nguồn là nhiều trang web có cấu trúc tương tự, rút trích tự động sử dụng một trang web duy nhất. 2.4.4 Khảo sát một số chương trình hỗ trợ đọc tin tức RSS hiện nay 2.4.4.1 iCA 2.4.4.2 Google Reader 2.4.4.3 iGoogle Các chương trình hỗ trợ đọc tin RSS ở trên có ưu điểm chạy trên nền web không cần cài đặt, tốc độ cao và có nhiều tính năng phong phú, đáp ứng gần như mọi yêu cầu như “add star”, “like”, “share”, “share with note”, “email”, “tagging” trong khi giao diện lại 9 hết sức đơn giản, dễ sử dụng, dễ tổ chức theo nhưng chuyên đề quan tâm. Tuy nhiên, dữ liệu của thông tin lấy về chỉ dưới dạng link, tiêu đề hay nội dung chỉ là phần giới thiệu không phải là tất cả nội dung của bài viết. Muốn đọc được đầy đủ thông tin của bài viết đó thì chúng ta phải truy cập vào bài viết gốc nằm theo đường dẫn (link) mà các chương trình ở trên lấy đã lấy về. Phương pháp rút trích tự động sử dụng chỉ một trang web duy nhất là phương pháp độc lập với nội dung trang web. Phương pháp này có khả năng áp dụng cao và không ảnh hưởng tới sự thay đổi của cấu trúc trang web. Hơn nữa, phương pháp này cũng không cần chuẩn bị trước tập huấn luyện cũng như chuẩn bị các trang web liên quan để rút trích thông tin. Chương 3 - Bóc tách dữ liệu sử dụng mô hình DOM Từ các phương pháp rút trích thông tin trên trang web đã trình bày ở chương 2, luận văn đã chọn phương pháp rút trích thông tin tự động dựa trên một trang web duy nhất. Nội dung chương này trình bày chi tiết các bước thực hiện để rút trích và đối sánh các bộ dữ liệu có trong trang web. 3.1 Giới thiệu 3.1.1 Khái niệm cây DOM 3.1.2 Xây dựng cây DOM Xây dựng cây DOM từ những trang Web đầu vào là một bước cần thiết trang nhiều giải thuật trích xuất dữ liệu. Có hai phương pháp cơ bản để xây dựng các cây DOM. 10  Sử dụng các thẻ riêng biệt: Trong đó có 2 việc cần thực hiện: + Làm sạch mã HTML: Một vài thẻ không cần thẻ đóng (như
,
) mặc dù chúng có thẻ đóng. + Xây dựng cây: Chúng ta có thể đi theo các khối con của các thẻ HTML để xây dựng được cây DOM.  Sử dụng các thẻ và các hộp ảo (visual cue): Thay vì phân tích mã HTML để sửa lỗi, có thể sử dụng sự biểu diễn hoặc các thông tin ảo. Các bước xử lý như sau: + Tìm 4 đường biên của hình chữ nhật ứng với mỗi phần tử HTML thông qua việc công cụ trình diễn của trình duyệt + Theo sự tuần tự của thẻ mở và sự kiểm tra xem một hình chữ nhật có nằm trong một hình chữ nhật khác không, để xây dựng cây DOM. 3.1.3 Sử dụng cây DOM bóc tách thông tin Để bóc tách thông tin cần thiết ở một node của cây DOM, chúng ta cần chỉ rõ đường đi từ gốc của cây đến node câng bóc tách thông tin. Đương đi này gọi là một mẫu trích xuất hay mẫu bóc tách (XPath). Trích xuất thông tin web dựa vào cây DOM trước tiên việc trích xuất này được hỗ trợ bởi xây dựng cây DOM cho mã HTML của trang. Các mẫu trích xuất này có thể được làm rõ như đường dẫn từ gốc của cây DOM đến node chứa nội dung cần trích xuất. Với đầu vào là một trang web có dạng liệt kê danh sách mẩu tin, phương pháp của luận văn được thực hiện thông qua các bước: 11  Xác định các thuộc tính khóa của bộ dữ liệu  Xây dựng bộ dữ liệu mẫu trong trang web  Tìm kiếm các bộ dữ liệu có trong trang web  Xác định các thuộc tính trong một bộ dữ liệu 3.2. Xác định các thuộc tính khóa của bộ dữ liệu Phần lớn các phương pháp rút trích thông tin trên một trang duy nhất đều có bước đầu tiên là đi tìm vùng dữ liệu chính của trang web để xác định danh sách các bộ dữ liệu. Tuy nhiên, bước này vô hình chung đã loại bỏ các danh sách khác trong trang web cũng như dễ dàng nhận dạng sai vùng dữ liệu. Thay vào đó phương pháp đề xuất sẽ không tìm vùng chứa nội dung chính mà trực tiếp xác định các bộ dữ liệu có trong trang web thông qua tìm kiếm các thuộc tính khóa của bộ dữ liệu. 3.2.1. Cách thức duyệt trên cây DOM Do các thuộc tính chỉ bảo toàn đường dẫn từ nút lá đến nút danh sách bộ dữ liệu, nên thuật toán sẽ bắt đầu từ các nút lá của cây DOM và đi ngược lên nút gốc. Nhằm giảm bớt độ phức tạp tính toán và tăng tốc độ duyệt trên cây, cây DOM biểu diễn của trang web sẽ được lược giản hóa bằng cách loại bỏ các nhánh không dẫn đến nút lá văn bản hoặc nút văn bản có nội dung rỗng. 12 3.2.2 Xác định nút ứng cử là danh sách và danh sách các thuộc tính khóa Tại mỗi bước đi ngược lên gốc, ta xét từng nút trên cây DOM xem có phải thể là nút chứa danh sách các bộ thuộc tính và xác định thuộc tính khóa của các bộ thuộc tính này. Do tính chất của thuộc tính khóa mục, nếu p là nút chứa danh sách các bộ dữ liệu thì các thuộc tính khóa của các bộ dữ liệu trong p phải là danh sách các nút lá văn bản có cùng đường dẫn từ nút lá đến nút p và xuất hiện nhiều nhất (thuộc tính khóa là thuộc tính của bộ dữ liệu và luôn xuất hiện trong bộ dữ liệu). Hơn nữa các nút lá này phải thuộc về các cây con phân biệt và trực tiếp của p do tính chất các bộ dữ liệu bao gồm toàn bộ một hoặc nhiều cây con trực tiếp của nút danh sách. Nói cách khác, hai nút lá là thuộc tính khóa không thể xuất hiện trong cùng một cây con trực tiếp của p. Các bước trên chỉ dựa trên cấu trúc của thuộc tính khóa của cây DOM nên vẫn có khả năng nhận nhầm cấu trúc của một cây con của trang web thành nút danh sách bao gồm các thuộc tính khóa thỏa các tính chất nêu trên. Vì vậy, cần có các bộ lọc kết quả như: độ tương đồng giữa kích thước của các bộ dữ liệu trong cùng một danh sách, độ tương đồng về cấu trúc cây của các bộ dữ liệu trong cùng một danh sách... Tùy vào tính chất và loại website muốn rút trích thông tin ta có thể bổ sung thêm các loại bộ lọc kết quả để có được kết quả cô đọng và chính xác hơn. Sau bước này ta có được các danh sách và các thuộc tính khóa tương ứng. Tuy nhiên, một loại bộ dữ liệu có thể xuất hiện 13 trong nhiều danh sách khác nhau của trang web. Vì vậy, ta cần xác định các loại bộ dữ liệu có trong trang web và tiến hành gom nhóm các loại bộ dữ liệu. Các bước gom nhóm cơ bản gồm:  Gom nhóm các danh sách liền kề nhau có chung đường dẫn từ khóa lên nút danh sách. Ví dụ hai danh sách là hai thẻ liên tiếp nhau trong một thẻ trong Hình 3.6.  Gom nhóm các danh sách có chung đường dẫn từ nút khóa lên nút danh sách và có bộ dữ liệu mẫu tương đồng nhau. Tức là các danh sách có cấu trúc cây của các bộ dữ liệu tương đồng nhau. Cuối cùng, nhằm xác định được bộ dữ liệu chính của trang web, ta cần hàm đánh giá độ mức độ quan trọng của danh sách trong trang web. 3.2.3. Thuật toán tìm các thuộc tính khóa trên cây DOM 1. Gọi R là tập hợp các loại danh sách các thuộc tính khóa của trang web. Ban đầu R = ∅ 2. Lược giản hóa cây DOM của trang web và gọi là cây D, chỉ giữ lại các nhánh có chứa nút văn bản. 3. Gọi T là tập hợp tất cả các nút lá của cây D là văn bản text có nội dung khác rỗng. 4. Gọi P là tập hợp tất cả các nút cha trên cây D của các nút t ∈ T. 14 5. ∀p ∈ P, trong tập C các nút con trực tiếp của p, tìm các nút lá văn bản t có đường dẫn tương ứng đến các nút con phân biệt thuộc C giống nhau. 6. Xác định nhóm g là nhóm đầu tiên có số lượng nút con trực tiếp của p nhiều nhất. 7. Áp dụng các phương pháp lọc kết quả nhóm g có phải là danh sách các thuộc tính khóa trong danh sách p hay không. 8. Nếu thỏa bước 6, R = R ∪ g. 9. Nếu P ≠ ∅, gán T = P và quay lại bước 3. 10. Gom nhóm cơ bản các danh sách thuộc tính khóa trong R của cùng một loại bộ dữ liệu. 11. Sắp xếp R giảm dần dựa trên hàm f, hàm đánh giá độ quan trọng của danh sách các thuộc tính khóa trong trang web. 3.3. Xây dựng bộ dữ liệu mẫu trong trang web 3.3.1. Tổng quan 3.3.2. Phương pháp Bước 1. Chuyển đổi các bộ dữ liệu thành các chuỗi phần tử với một phần tử đại diện cho tên của nút trên cây DOM. Thực hiện duyệt theo chiều sâu trên cây biểu diễn bộ dữ liệu và thêm các phần tử vào chuỗi phần tử. Bước 2. Xác định chuỗi phần tử dài nhất và tạm thời đặt làm bộ dữ liệu mẫu m. 15 Bước 3. ∀ti là các bộ dữ liệu danh sách và ti ≠ m. Đối sánh ti với m. Sau khi đối sánh, bổ sung vào m các phần tử của ti chưa được đối sánh trên m. 3.4. Tìm kiếm các bộ dữ liệu có trong trang web Dựa trên bộ dữ liệu mẫu đã tìm được ở bước trên, ta một lần nữa đối sánh bộ dữ liệu mẫu trên toàn bộ cây DOM biểu diễn của trang web để tìm lại tất cả bộ dữ liệu có thể có thỏa bộ dữ liệu mẫu. Bước này rất quan trọng vì trong bước đầu của phương pháp rất có thể bỏ qua các thuộc tính khóa khi trong trang web có nhiều danh sách riêng biệt. Bước này cũng giúp tìm được các bộ đứng riêng lẻ không nằm trong danh sách mà các thuật toán trước đó đều không phát hiện được. Do đường dẫn từ thuộc tính khóa lên tới nút chứa danh sách của cùng một loại bộ dữ liệu luôn bảo toàn trong một trang web, ta tiếp tục duyệt từ nút lá ngược trở lên gốc của cây DOM để so sánh với đường dẫn của thuộc tính khóa trong dữ liệu mẫu. Ứng với mỗi trường hợp tìm thấy, ta tiếp tục đối sánh cây biểu diễn của bộ dữ liệu mẫu tại vị trí tìm được. Nếu độ tương đồng giữa bộ dữ liệu mẫu và vị trí đối sánh thỏa ngưỡng tương đồng, ta phát hiện thêm một bộ dữ liệu có trong trang web. 3.5. Xác định các thuộc tính trong một bộ dữ liệu Dựa vào bộ dữ liệu mẫu và danh sách bộ dữ liệu tìm được ta tiến hành đối sánh để xác định các thuộc tính trong bộ dữ liệu. Do bộ dữ liệu mẫu là bộ dữ liệu lớn nhất vì vậy việc đối sánh trở thuộc tính trở thành đối sánh cây với cây biểu diễn bộ dữ liệu mẫu. 16 Tương tự như việc xây dựng bộ dữ liệu mẫu ở mục 3.3, tôi tiếp tục sử dụng phương pháp xấp xỉ là đối sánh chuỗi để đối sánh các thuộc tính của các bộ dữ liệu với bộ dữ liệu mẫu. Chương 4 - Xây dựng website thông tin dựa trên quá trình trích xuất thông tin từ site khác và kết quả. Chương này trình bày nội dung thực nghiệm của phương pháp rút trích thông tin tự động, sử dụng phương pháp bóc tách dữ liệu và mô hình trang web đã lấy và xử lý thông tin từ một site khác. 4.1 Bài toán cần thực hiện Bài toán đặt ra của luận văn là sử dụng các thông tin mà RSS cung cấp như: link, tiêu đề, phần giới thiệu của bài viết. Căn cứ vào cấu trúc của website cung cấp tin RSS và phương pháp phân tích HTML DOM để lấy toàn bộ nội dung của bài viết, sau đó xử lý lưu vào cơ sở dữ liệu phục vụ cho hệ thống website tin tức. Mục tiêu của luận văn là xây dựng nên một hệ thống hỗ trợ người dùng chọn kênh tin tức, thu thập tin tức, quản lý các kênh tin, tạo ra một website tin tức cho chính người dùng mà không phải lướt từng website để đọc tin tức. Thông qua việc khảo sát một số phần mềm đọc tin tức trong và ngoài nước, và yêu cầu từ phía người dùng, có thể tóm tắt yêu cầu của người dùng đối với hệ thống bóc tách thông tin như sau: - Người dùng có thể tạo ra kênh tin tức cho riêng mình bằng cách chỉ cần đăng ký một tài khoản và đăng nhập vào nhập đường dẫn link tới địa chỉ trang website cần lấy tin. 17 - Người dùng có thể tổ chức, quản lý kênh tin tức của mình với các chức năng: - Tạo nhóm tin tức (như: tin giáo dục, xã hội, tin chứng khoán…), sửa nhóm tin và xoá nhóm tin. - Lựa chọn số tin tức được hiển thị. - Người dùng còn có thể tìm kiếm thông tin. 4.2 Đánh giá và lựa chọn giải pháp Thông qua việc khảo sát một số website, phần mềm hỗ trợ đọc tin tức RSS ở trên, ta thấy có giải pháp để xây dựng hệ thống đó là: Win Form và Web Form. Sau khi phân tích những thuận lợi hay khó khăn của hai giải pháp trên. Sau khi xem xét các khía cạnh, ưu và nhược điểm của các công nghệ cho thấy Web Form là một giải pháp tối ưu để phát triển hệ thống. Cụ thể ở đây là xây dựng website tổng hợp thông tin, sử dụng ngôn ngữ lập trình PHP và hệ quản trị Cơ sở dữ liệu MySql. Dựa vào cấu trúc các thẻ HTML lấy về từ link RSS, luận văn sẽ dùng phương pháp dựa trên cấu trúc HTML DOM của trang web để phân tích và xây dựng cấu trúc cây DOM. Qua đó trích xuất thông tin và xây dựng trang web tổng hợp thông tin. 4.3 Phân tích chức năng hệ thống 4.2.1 Biểu đồ Use case 4.2.2 Đặc tả các Use Case 4.2.3 Biểu đồ tuần tự (Sequence Diagram) 4.4 Thiết kế cơ sở dữ liệu 4.3.1 Đặc tả chi tiết các bảng dữ liệu 18 4.3.2 Mô hình quan hệ 4.5 Cài đặt và thử nghiệm 4.5.1 Lấy link có trong RSS Khi người dùng cung cấp link RSS (Ví dụ: http://www.dantri.com.vn/xa-hoi.rss), nhiệm vụ của hệ thống là trích rút dữ liệu từ file RSS. Bước 1: Thiết kế lớp Article để chứa dữ liệu mà ta trích rút từ RSS. Bước 2: Sử dụng lớp DOMDocument để trích rút dữ liệu từ RSS và lưu vào mảng đối tượng Article. 4.5.2 Bóc tách nội dung chi tiết Sau khi đã trích rút được các thông tin từ RSS và lưu vào mảng đối tượng Article. Tiến hành bóc tách nội dung chi tiết của bài viết. Bước 1: Từ link đến bài viết, tải nội dung trang HTML của website nguồn về. Bước 2: Sử dụng lớp SimpleHtmlDom và biểu thức chính quy (Regular Expression) để tách phần body của bài viết. Bước 3: Sử dụng lớp SimpleHtmlDom và biểu thức chính quy để lấy link ảnh của trong phần body. Sau đó, lưu ảnh của bài viết về server hiện ảnh. Bước 4: Lưu thông tin chi tiết bài viết vào Cơ sở dữ liệu. 4.5.3 Cài đặt 4.5.4 Một số màn hình giao diện đạt được - Xem thêm -

Xemtailieu.com là thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi tài liệu như luận văn đồ án, sách, giáo trình, đề thi, truyện đọc.v.v.. Với kho tài liệu khủng lên đến hàng triệu tài liệu tại Xemtailieu.com hy vọng đáp ứng được nhu cầu của các thành viên.