1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Các kỹ thuật phân tích và lấy tin tự động từ website

68 33 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 68
Dung lượng 2,54 MB

Nội dung

1 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CƠNG NGHỆ TRẦN HỮU DỰ CÁC KỸ THUẬT PHÂN TÍCH VÀ LẤY TIN TỰ ĐỘNG TỪ WEBSITE LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Hà Nội -2016 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TRẦN HỮU DỰ CÁC KỸ THUẬT PHÂN TÍCH VÀ LẤY TIN TỰ ĐỘNG TỪ WEBSITE Ngành: Công nghệ Thông tin Chuyên ngành: Kỹ Thuật Phần Mềm Mã số: 60 48 0103 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƢỜI HƢỚNG DẪN KHOA HỌC: TS TÔ VĂN KHÁNH Hà Nội -2016 LỜI CAM ĐOAN Tôi xin cam đoan, cơng trình nghiên cứu thân, số liệu đoạn mã chƣơng trình ứng dụng, kết trình bày luận văn trung thực chƣa đƣợc công bố cơng trình luận văn trƣớc Tác giả luận văn Trần Hữu Dự LỜI CẢM ƠN Trƣớc tiên xin chân thành cảm ơn đến thầy giáo TS Tơ Văn Khánh ngƣời tận tình bảo giúp đỡ tơi suốt q trình thực đề tài luận văn thạc sĩ hoàn thành đề tài Tơi xin bày tỏ lịng biết ơn chân thành tới thầy cô giáo khoa Công nghệ thông tin, trƣờng Đại học Công nghệ, Đại học Quốc Gia Hà Nội - nơi theo học năm qua Các thầy cô dạy cung cấp kiến thức quý báu, tạo điều kiện tốt cho tơi suốt q trình học tập nghiên cứu trƣờng Sau xin chân thành cảm ơn ngƣời thân gia đình, cảm ơn bạn bè khóa, đồng nghiệp quan giúp đỡ tơi q trình học tập nghiên cứu thực luận văn Tuy nhiên, trình làm luận văn cố gắng nghiên cứu, tìm hiểu vấn đề liên quan song luận văn chƣa thực đƣợc hồn chỉnh, cịn thiếu sót định Tơi mong nhận đƣợc ý kiến đánh giá, góp ý thầy giáo, bạn để luận văn đƣợc hồn thiện Hà nội, tháng 11 năm 2016 Học viên Trần Hữu Dự MỤC LỤC LỜI CAM ĐOAN LỜI CẢM ƠN DANH MỤC HÌNH VẼ MỞ ĐẦU CHƢƠNG GIỚI THIỆU 1.1 Nhu cầu cập nhật tin tức ngƣời dù 1.2 Ứng dụng đọc tin tự động CHƢƠNG CÁC KỸ THUẬT PHÂN TÍCH VÀ LẤY TIN TỰ ĐỘNG 2.1 Giới thiệungôn ngữ mở rộng đánh dấu 2.2 Giới thiệu Kỹ thuật RSS 2.3 Phƣơng pháp Interface DOM phân tíc 2.4 Phƣơng pháp Interface SAX phân tích 2.5 Phân tích nội dung XML Androi CHƢƠNG KỸ THUẬT PHÂN TÍCH WEBSITE VỚI JSOUP 3.1 Giới thiệu 3.2 Định nghĩa Jsoup 3.3 Thành phần Jsoup API 3.4 Các phƣơng thức DOM 3.5 Các phƣơng thức giống Css, jQuery CHƢƠNG XÂY DỰNG VÀ PHÁT TRIỂN ỨNG DỤNG TỰ ĐỘNG CẬP NHẬT TIN TỨC 4.1 Một số ứng dụng hỗ trợ đọc tin tức từ 4.2 Phân tích thiết kế hệ thống đọc tin tự đ 4.3 Các chức ứng dụng 4.4 Kết thực nghiệm nhận xét TÀI LIỆU THAM KHẢO BẢNG CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT STT Thuật ngữ viết t API CSS DOM HTML JAXP JDK LISP MathML RDF 10 RSS 11 SAX 12 SGML 13 StAX 14 SVG 15 URL 16 WHATWG 17 XHTML 18 XML 19 CSS STT Số hiệu Hình 2.1 Hình 2.2 Hình 2.3 Hình 4.1 Hình 4.2 Hình 4.3 Hình 4.4 Hình 4.5 Hình 4.6 10 Hình 4.7 10 Hình 4.8 11 Hình 4.9 12 Hình 4.10 13 Hình 4.11 14 Hình 4.12 15 Hình 4.13 16 Hình 4.14 17 Hình 4.15 18 Hình 4.16 19 Hình 4.17 20 Hình 4.18 21 Hình 4.19 22 Hình 4.20 STT Số hiệu Bảng 3.1 Bảng 3.2 Bảng 3.3 Bảng 3.4 Bảng 3.5 Bảng 3.6 Bảng 4.1 Bảng 4.2 Bảng 4.3 46 Đăng ký website nhận tin: Để nhận tin tức từ website ngƣời dùng cần phải đăng ký nhận tin cho 1website Ngƣời dùng cần nhập đƣờng dẫn tới trang có chứa danh mục mà website cung cấp RSS.Ứng dụng có nhiệm vụ kiểm tra xem kênh tin vừa nhập có hệ thống ứng dụng chƣa, có hiển thị danh sách danh mục tin kênh tin cho ngƣời dùng cập nhật Nếu chƣa có tiến hành thêm kênh tin danh mục tin vào sở liệu Hiển thị danh sách kênh tin, danh mục tin, tin tức: Ứng dụng tiến hành đọc danh sách kênh tin, danh sách danh mục tin, tin tức từ sở liệu đƣợc lƣu hệ thống cách thông thƣờng, việc hiển thị chi tiết tin tức ứng dụng dùng URL tin tức tải để thị Đẩy thơng điệp có tin mới: Ứng dụng có service chạy ngầm đƣợc đặt theo thời gian chạy, sau khoảng thời gian đƣợc đặt trƣớc service tiến hành chạy lần để kiểm tra xem có tin tức đƣợc đƣa lên website Nếu phát đƣợc nội dung tin tức đẩy Notification thơng báo  Thiết kế sở liệu Cơ sở liệu chƣơng trình khơng q lớn, ứng dụng chạy thiết bị di động nên hệ quản trị sở liệu đƣợc cung cấp Android SqlLite Sau thiết kế cấu trúc bảng liệu mơ hình quan hệ bảng: - Thiết kế cấu trúc bảng liệu Bảng website_url: Lƣu thông tin địa Website để chứa kênh tin website_url STT Tên trƣờng website_id website_title website_url website_url_rss website_count_ news Bảng 4.1: Bảng website_url (địa website) Bảng news_category: Lƣu thông tin danh mục đƣợc chọn để nhận tin news_category STT Tên trƣờng Id website_id website_url news_category _title news_category _url news_category _rss_status news_category _count_news Bảng 4.2 - Bảng news_category(Mục n Bảng news: Lƣu thông tin tin tức danh mục News STT Tên trƣờng Id website_id website_url news_category 48 _id news_category _url news_title news_url news_summary news_is_read news_pub_date Bảng 4.3 - Bảng news (Các tin tức mớ - Mô hình quan hệ (ER) Hình 4.11 - Mơ hình quan hệ thực thể(ER)  Một số thuật toán đƣợc cài đặt Thuật toán 1: kiểm tra xem địa website tồn sở liệu, tồn lấy danh sách danh mục tin tức có hỗ trợ RSS web lên cho ngƣời dùng cập nhật Trong q trình thực hiển kiểm tra thực tế danh mục cịn tồn Website thực tế khơng Nếu có mục đƣợc thêm website bổ xung vào sở liệu, sau tiến hành cập nhật trạng thái đọc tin tổng số tin danh mục 49 Nếu kiểm tra website nhập vào chƣa có hệ thống phân tích để lấy danh sách danh mục nhận tin mã HTML website Sau lấy đƣợc danh sách danh mục thêm địa website danh mục vào sở liệu Đồng thời tiến hành đọc tin tức đƣa vào sở liệu với danh mục đƣợc ngƣời đánh dấu nhận tin Sơ đồ khối giải thuật Đọc danh sach category Đồng category DB, web Kiểm tra tin tức Gửi thông báo Kết thúc Hình 4.12 - Sơ đồ giải thuật kiểm tra tồn website danh mục tin tức Thuật toán 2: Kiểm tra website cập nhật tin tức mới, báo có tin Mỗi trang website đƣợc ký nhận tin mà cập nhật đƣa nội dung tin tức lên website có service chạy ngầm dƣới máy điện thoại Client thực nhiệm vụ đọc phát tin tức Nếu có nội dung đƣợc đƣa lên tự động báo Notification cho ngƣời dùng 50 Service thực đọc lần lƣợt website đƣợc đăng ký nhận tin hệ thống máy Client đọc danh sách mục tin đƣợc đánh dấu nhận tin Đồng thời tiến hành đọc danh mục tin từ website, số mục tin tức có thuộc tập danh mục đƣợc đánh dấu nhận tin lấy lên từ sở liệu tiến hành đọc tin tức mục đem so sánh với tin tức mục tƣơng ứng có sở liệu Nếu tin tức ghi nhận vào sở liệu gửi thông điệp báo có tin tức nhận đƣợc Sơ đồ giải thuật nhƣ sau Bắt đầu Đọc Website URL từ DB Đọc ds Category từ Web Tồn DB Sai Thêm vào DB Đọc ds Category nhận tin từ DB Kiểm tra tin Gửi thông báo Sai Kết thúc Hình 4.13 - Sơ đồ giải thuật kiểm tra tồn tin tức 51 4.3 Các chức ứng dụng Chức đăng ký:Xem Hình 4.14 Chức cho phép ngƣời dùng nhập vào địa website mục muốn nhận tin Ngƣời dùng nhập địa website muốn nhận tin nhấn nút OK.Hệ thống tự động kiểm tra tính hợp lệ đƣờng link địa vừa đƣợc nhập vào, kiểm tra tồn đƣờng link database Sau load tồn liệu danh mục mục tin nhận lên listview với tùy biến cho phép ngƣời dùng tích chọn nhận tin hoăc khơng tích chọn nhận tin Hình 4.14 -Chức đăng ký website nhận tin Để tùy biến cài đặt điều kiện nhận tin danh mục tin ngƣời dùng kích vào dịng danh mục tin tức, cửa sổ Popup đƣợc hiển thị cho phép nhận điều kiện tùy biến nhận tin xem Hình 4.15 Hình 4.15 -Chức năngtùy biến cài đặt nhận tin 52 Sau ngƣời dùng nhấn nút hoàn tất để kết thúc chức đăng ký nhận tin, lúc ứng tiến hành lƣu thông tin địa website mục đánh dấu nhận, tin tức liên quan xuống database Chức hiển thị danh sách website đăng ký: Hình 4.16 giao diện chức hiển thị danh sách website đăng ký nhận tin đƣợc load lên từ database có lời gọi hiển thị, kèm theo tổng số tin tức chƣa đọc Khi kích chọn vào website hệ thống chuyển hƣớng sang hình chức hiển thị danh sách mục tin tức website Hình 4.16 -Chức danh sách website nhận tin Chức hiển thị danh mục tin tức website: Tại chức (Xem Hình 4.17) hệ thống hiển thị tất danh mục tin lƣới hiển thị mà ngƣời dùng tích chọn nhận tin chức đăng ký, kèm bên phải tổng số tin tức chƣa đọc danh mục tin Khi kích chọn vào mục tin hệ thống chuyển hƣớng sang hình chức hiển thị tóm tắt tin tức danh mục tin 53 Hình 4.17 -Chức danh mục website nhận tin Chức hiển thị tóm tắt nội dung tin tức: (Xem Hình 4.18) Chức thực việc hiển thị tóm tắt tin tức bao gồm tiêu đề, tóm lƣợc Khi ngƣời dùng kích chọn vào tin tức hệ thống chuyển hƣớng sang hình hiển thị chi tiết tin tức giúp ngƣời dùng đọc đƣợc dễ dàng Hình 4.18 -Chức danh sách tin Chức hiển thị chi tiết tin tức: (Xem Hình 4.19) Chức hiển thị chi tiết nội dung tin tức thông qua web Browers giúp ngƣời dùng đọc tồn tin tức 54 Hình 4.19 -Chức danh nội dung tin tức Chức tự động thơng báo có tin tức mới: Hệ thống sử dụng services chạy ngầm phía dƣới tự động quét file RSS website từ lọc, phát tin tức đƣợc cập nhật website, đến số lƣợng tin tức website Sự dụng công nghệ push notification Android để thực báo cho ngƣời dùng biết (Xem Hình 4.20) giao diện đẩy tin thơng báo, ngƣời dùng muốn đọc tin tức kích chọn vào message danh sách website có tin đƣợc hiển thị với tin tức Hình 4.20-Chức tự động thơng báo tin 55 4.4 Kết thực nghiệm nhận xét  Kết thực nghiệm: Ứng dụng phân tích lấy tin tự động từ website áp dụng thành công kỹ thuật phân tích DOM, SAX cấu trúc file XML, RSS, HTML Cụ thể nhƣ sau:  Áp dụng thành cơng cơng cụ Jsoup với kỹ thuật phân tích DOM để phân tích mã nguồn HTML website để lấy đƣợc danh mục mục tin có cung cấp file RSS  Áp dụng thành cơng kỹ thuật phân tích SAX với XMLPullParser Android để phân tích cú pháp đọc liệu RSS 2.0  Phát triển đƣợc tính tự động quét phát tin tức sau tự động gửi thơng báo cho ngƣời dùng  Ứng dụng phân tích lấy tin tốt với hầu hết website có cung cấp RSS  Nhận xét: Đối với toán phân tích lấy tin tự động từ website cụ thể cần phải cân nhắc xem xét thực trạng toán, đánh giá đƣợc qui mô, độ phức tạp, yêu cầu chức hệ thống để đƣa lựa chọn giải pháp, lựa chọn công nghệ cho phù hợp Trong trƣờng hợp cụ thể thực nghiệm luận văn với website có file nguồn mã Html, Xml vừa nhỏ sử dụng kỹ thuật phân tích DOM tốt tồn mã nguồn đƣợc tải vào nhớ để phân tích DOM thực lần tạo lên DOM, việc truy cập ngẫu nhiên tới các phần tử DOM thuận tiện, nhanh chóng, hiệu suất xử lý liệu cao Ngƣợc lại website thƣờng có tuần suất cung cấp tin file RSS cao, số lƣợng tin nhiều nên việc áp dụng kỹ thuật phân tích SAX để xử lý nhiệm vụ hành cần thực thi thời điểm nhớ tốt cho hiệu cao, giảm việc yêu cầu tài nguyên thiết bị phần cứng Việc áp dụng công cụ Jsoup thƣ viện XmlPullParser Android với trƣờng hợp cụ thể để phù hợp thực cần thiết 56 KẾT LUẬN Luận văn tìm hiểu trình bàycác kỹ thuật phân tích lấy tin tự động từ website với kết đạt đƣợc là:  Hệ thống lại kỹ thuật phân tích cấu trúc website để lấy đƣợc tin tức cách tự động từ website  Phát triển xây dựng ứng dụng di động Android có khả tự động cập nhật thông báo đến cho ngƣời dùng tin tức tùy theo cài đặt Các kỹ thuật áp dụng để phân tích để lấy tin tự động từ website đƣợc trình bày luận văn gồm có XML, RSS 2.0, DOM, SAX, XmlPullParser, Jsoup:  XML ngôn ngữ đánh dấu với mục đích dùng chung, có khả mô tả nhiều loại liệu khác với đặc điểm đa thân thiện với giao thức Internet, tảng để phát triển nhiều ngôn ngữ khác có ứng dụng cao đặc biệt RSS  RSS 2.0 sản phẩm đƣợc tạo thành từ cấu trúc XML RSS dịch vụ cung cấp thông tin thực đơn giản dùng việc chia sẻ tin tức web RSS danh sách đối tƣợng mẩu tin đƣợc miêu tả gồm có: tiêu đề, nội dung tóm lƣợc, liên kết đến trang chính, ngày tháng, tác giả Để đọc đƣợc liệu cung cấp từ file RSS website Java API có cung cấp Các kỹ thuật phân tích file XML (RSS) DOM, SAX kỹ thuật phân tích RSS Android với package XmlPullParser để đọc file Xml RSS  DOM kỹ thuật tiếp cận liệu XML mà tất thành phần tạo nên XML đƣợc xem đối tƣợng, đƣợc xem "node" Khi parser đọc XML thành đối tƣợng DOM nhớ có cấu trúc với đối tƣợng node, node có mối quan hệ phân tầng cha-con.Dựa vào đối tƣợng mà trích xuất thơng tin, thay đổi thơng tin thơng qua hàm mà đối tƣợng cung cấp 57  SAX phƣơng pháp kỹ thuật phân tích liệu XML dựa vào kiện trình đọc file XML từ xuống dƣới Vì để sử dụng phƣơng pháp ngôn ngữ cần định nghĩa kiện hàm tƣơng ứng với kiện SAX không ghi nhớ XML nhƣ cấu trúc nhớ mà xây dựng cấu trúc nhiệm vụ thi hành nhớ dó SAX thực nhanh tốn tài nguyên so với DOM Bên cạnh kỹ thuật Android cịn cung cấp kỹ thuật XML Pull Parser tool java mạnh Jsoup  XmlPullParser làm việc tƣơng tự nhƣ StAX cho phép mã ứng dụng "kéo" tìm kiếm kiện từ trình phân tích, trái ngƣợc với SAX tự động đẩy kiện cho trình xử lý XmlPullParser thể đƣợc ƣu điểm đơn giản sử dụng, tốn nhớ xử lý nhanh DOM SAX  Jsoup thƣ viện đƣợc sử dụng để phân tích tài liệu HTML, đƣợc cung cấp API dùng để lấy liệu thao tác liệu từ URL từ file HTML Sử dụng phƣơng pháp DOM, CSS, JQuery để lấy liệu thao thác với liệu Jsoup đƣợc thiết kế để làm việc đƣợc với tất phiên HTML thực tế, từ xác nhận tới không hợp lệ tag-soup, Jsoup tạo thành phân tích phù hợp Các ứng dụng di động ngày đƣợc xây dựng rộng khắp phổ biến thiết bị di động cầm tay Internet ngày Áp dụng kỹ thuật phân tích cấu trúc website để xây dựng ứng dụng cập nhật tin tức cách tùy biến theo yêu cầu ngƣời dùng đƣợc phát triển rộng thời gian tới Luận văn hệ thống lại phần lý thuyết chủ đề xây dựng ứng dụng cập nhật tin tức áp dụng thực tế cịn cải tiến để trở thành ứng dụng cập nhật tin tức hữu dụng cho ngƣời dùng 58 TÀI LIỆU THAM KHẢO Tiếng Việt [1] DOM SAX, http://bodua.vn/knowledge/La%CC%80m-vie%CC %A3c-vo%CC%81i-XML/DOM-va%CC%80-SAX_72.html [2] NewsFeed, https://play.google.com/store/apps/details? id=com.aaravmedia.newsfeed [3] Phương pháp Interface DOM phân tích RSS 2.0,http://o7planning.org/vi/10109/phan-tich-xml-bang-cach-su-dung-mo-hinhdom-trong-java#a6435 [4] Phương pháp Interface SAX phân tích RSS2.0, http://www.bodua.vn/knowledge/Java-Server-Pages/Du%CC%80ng-SAXdo%CC%A3c-XML_54.html [5] Phương pháp phân tích HTML Jsoup, http://o7planning.org/vi/10399/huong-dan-su-dung-java-jsoup-phan-tich-html [6] RSS 2.0, https://www.ibm.com/developerworks/vn/library/webservices/201301/x-rss20/ [7] Ứng dụng đọc báo mới, https://play.google.com/store/apps/details?id=com.epi&hl=vi [8] Ứng dụng đọc báo Tinmoi24h, https://play.google.com/store/apps/details? id=mobi.fiveplay.tinmoi24h&hl=vi [9] Ứng dụng đọc tin tự động Việt Báo, http://vietbao.vn/Vi-tinh-Vienthong/RSS-Ung-dung-tuyet-voi-nhat/55135693/217/ [10] XML,https://www.ibm.com/developerworks/vn/edu/xmlintro/ [11] XML structure, https://www.ibm.com/developerworks/vn/library/12/xandroidxml/#listing13 Tiếng Anh [12] Development Org.XmlPull.V1.XmlPullParser NameSpace, https://developer.xamarin.com/api/type/Org.XmlPull.V1.XmlPullParser/ [13] Gabe Beged-Dov, JFinity Systems LLC RDF Site Summary (RSS 1.0), http://web.resource.org/rss/1.0/spec#s9 [14] Json, http://www.w3schools.com/js/js_json_intro.asp 59 [15] RSS 2.0 Specification, http://cyber.law.harvard.edu/rss/rss.html#ltcategorygtSubelementOfLtitemgt [16] RSS2.0 XML Pull Parsing,http://www.extreme.indiana.edu/xmlpull-website/index.shtml [17] Techniques for feedback, http://www2.le.ac.uk/offices/red/rd/career-development/researchstaff/mentoring/feedback [18] Techniques for Search engine, http://www.htmlgoodies.com/beyond/seo/article.php/3837311/Search-EngineOptimization-SEO-Advanced-Techniques.htm ... nghiên cứu kỹ thuật phân tích lấy tin tự động từ website tới ngƣời dùng cách kịp thời có ý nghĩa lý luận thực tiễn Mục tiêu luận văn nghiên cứu tổng thể kỹ thuật phân tích đọc tin tự động từ website. .. Nhu cầu cập nhật tin tức ngƣời dù 1.2 Ứng dụng đọc tin tự động CHƢƠNG CÁC KỸ THUẬT PHÂN TÍCH VÀ LẤY TIN TỰ ĐỘNG 2.1 Giới thiệungôn ngữ mở rộng đánh dấu 2.2 Giới thiệu Kỹ thuật RSS 2.3 Phƣơng... NGHỆ TRẦN HỮU DỰ CÁC KỸ THUẬT PHÂN TÍCH VÀ LẤY TIN TỰ ĐỘNG TỪ WEBSITE Ngành: Công nghệ Thông tin Chuyên ngành: Kỹ Thuật Phần Mềm Mã số: 60 48 0103 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƢỜI HƢỚNG

Ngày đăng: 11/11/2020, 21:35

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w