1. Trang chủ
  2. » Luận Văn - Báo Cáo

XÂY DỰNG ỨNG DỤNG GADGET

47 164 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Xây Dựng Ứng Dụng Gadget
Tác giả Trần Minh Hưng
Người hướng dẫn Nguyễn Thị Hậu
Trường học Đại Học Quốc Gia Hà Nội - Trường Đại Học Công Nghệ
Chuyên ngành Công Nghệ Thông Tin
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2010
Thành phố Hà Nội
Định dạng
Số trang 47
Dung lượng 1,96 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

XÂY DỰNG ỨNG DỤNG GADGET

Trang 2

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Trang 3

LỜI CẢM ƠN

Trước tiên, tôi xin gửi lời cảm ơn và lòng biết ơn sâu sắc đến cô giáoNguyễn Thị Hậu người đã tận tình chỉ bảo hướng dẫn tôi trong suốt quá trìnhthực hiện khoá luận tốt nghiệp

Tôi xin bày tỏ lời cảm ơn sâu sắc đến các thầy cô giáo đã giảng dạy tôitrong suốt bốn năm học qua, đã cho tôi nhiều kiến thức quý báu để tôi vữngbước trên con đường học tập của mình

Tôi xin gửi lời cảm ơn tới các bạn trong lớp K51CD, và K51CHTTT đãủng hộ khuyến khích tôi trong suốt quá trình học tập tại trường

Với lòng biết ơn chân thành, tôi xin gởi lời chúc sức khoẻ và những gì tốtđẹp nhất đến các thầy cô trong khoa, trong nhà trường, những bậc cha mẹ, anhchị đáng kính và toàn thể các bạn bè hiện đang còn học hoặc không còn học tạitrường Đại Học Công Nghê-Đại Học Quốc Gia Hà Nội

Hà Nội, ngày 10 tháng 05 năm 20010

Trần Minh Hưng

Trang 4

TÓM TẮT NỘI DUNG

Gadget lần đầu được Microsoft giới thiệu trên Windows Vista, được xâydựng nhằm hỗ trợ người sử dụng quản lý tài nguyên hệ thống, bộ nhớ, đĩa cứng,lịch, đồng hồ, xem thông tin về thời tiết, tỷ giá, tin tức…Các tiện ích này đượcđặt trên thanh Windown Sidebar properties chiếm một phần trên desktop và cóthể dễ dàng tùy chỉnh Không chỉ với vẻ hào nhoáng bề ngoài, những thuận tiện

mà Gadget đem đến đã làm say mê rất nhiều người

Trong khóa luận tốt nghiệp này, tác giả đề cập đến việc xây dựng một ứngdụng Gadget trên các hệ điều phổ biến như Windowns XP, Vista Kết nối đếncác dich vụ web để truy xuất dữ liệu hiện thị cho người sử dụng những thôngtin như thời tiết, tỷ giá ngoại tệ, tin tức cập nhật…Hiện nay có rất nhiều trangweb cung cấp dich vụ này, ứng dụng trong KTTN cho phép người dùng tùychọn lấy thông tin được cung cấp bởi những trang web uy tín

Ngoài phương pháp lấy tin phổ biến thường được sử dụng từ những trangweb cung cấp dữ liệu với đinh dạng chuẩn chia sẻ dữ liệu như XML, RSS feed.Khóa luận tốt nghiệp cũng đề cập và nghiên cứu đến phương pháp để lấy thôngtin từ một trang web bất kỳ và cố gắng giải quyết bằng cách sử dụng các kĩthuật của Web Spider đọc và trích xuất thông tin dựa vào các từ khóa và biểuthức chính quy (regular expression) để bóc tách một trang HTML …

Trang 5

MỤC LỤC

LỜI CẢM ƠN i

TÓM TẮT NỘI DUNG ii

MỤC LỤC iii

BẢNG CÁC KÍ HIỆU VIẾT TẮT v

DANH MỤC HÌNH VẼ vi

MỞ ĐẦU 1

Chương 1: Giới thiệu Gadget 2

1.1 Gadget 2

1.2 Cấu trúc một Gadget 3

1.3 Phân loại 5

1.4 Dữ liệu mà Gadget sử dụng 6

Chương 2: Các kiến thức nền tảng và công nghệ liên quan 7

2.1 Giới thiệu về XML 7

2.1.2 Tại sao lại sử dụng XML 8

2.1.3 Những thành phần của một tài liệu XML 8

2.1.4 Một tài liệu XML hợp lệ 9

2.2 Tìm hiểu RSS 10

2.2.1 Tại sao nên sử dụng RSS 10

2.2.2 Những điểm mạnh của RSS 11

2.2.3 Ứng dụng RSS trong việc xây dựng Gadget 12

2.3 Xpath 13

2.3.1 Giới thiệu 13

2.3.2 Cú pháp của Xpath 13

2.3 Tìm hiểu về AJAX 15

2.3.1 Mô hình DOM 16

2.3.2 Cơ chế hoạt động của AJAX 17

Trang 6

2.5 Web Spider 20

2.5.1 Trích xuất thông tin sử dụng Web Spider 21

2.5.2 HTML Tidy 22

2.5.3 CURL 23

2.5.4 Regular Expression 24

Chương 3: Xây dựng ứng dụng Gadget 26

3.1 Mô tả chức năng 26

3.1.1 Chức năng xem thông tin thời tiết 26

3.1.2 Chức năng xem thông tin về ngoại tệ 26

3.1.3 Chức năng xem thông tin về giá vàng 26

3.1.4 Chức năng xem tin tức 27

3.1.5 Chức năng tìm kiếm thông tin từ trang web bất kỳ 27

3.2 Cấu trúc của chương trình 27

3.3 Xây dựng luật để tìm kiếm thông tin từ trang web bất kỳ 29

3.4 Một số giao diện của ứng dụng 30

Chương 4: Cài đặt và thực nghiệm 35

4.1 Cài đặt ứng dụng 35

4.2 Kết quả thực nghiệm 35

4.2.1 Thực nghiệm chức năng chương trình 35

4.2.2 Thực nghiệm trên hệ điều hành 36

Chương 5: Kết Luận và hướng phát triển 37

5.1 Kết luận 37

5.2.Các hạn chế của ứng dụng 37

5.3 Hướng phát triển tiếp theo 37

Tài liệu tham khảo 39

Trang 7

BẢNG CÁC KÍ HIỆU VIẾT TẮT

Kí hiệu Diễn giải

AJAX Ansynchronous Javascript and XMLAPI Application Programming Interface

HTTP Hyper Text Transfer Protocol

XHTML Extensible HyperText Markup Language

Trang 8

DANH MỤC HÌNH VẼ

Hình 1: Minh họa Gadget 3

Hình 2: Các file chính của một Gadget .5

Hình 3: Phân loại Gadget 5

Hình 4: Các nguồn dữ liệu mà Gadget sử dụng 6

Hình 5: Mô hình một Data application Gadget 7

Hình 6: Minh họa cấu trúc dạng cây của file XML .15

Hình 7: Minh họa cấu trúc DOM của một trang HTML 17

Hình 8: Mô hình tương tác trong một ứng dụng web truyền thống 18

Hình 9: Mô hình tương tác trong ứng dụng web dùng AJAX 19

Hình 10: So sánh hai mô hình ứng dụng web: truyền thống và sử dụng AJAX 20

Hình 11 : Cấu trúc của ứng dụng Gadget 28

Hình 12 : Giao diện hiện thị thông tin thời tiết 30

Hình 13 : Giao diện hiện thị thông tin tỷ giá ngoại tệ 30

Hình 14 : Giao diện hiện thị thông tin giá vàng 31

Hình 15 : Giao diện hiện thi tin tức và cửa sổ flyout 31

Hình 16 : Giao diện hiện thị thông tin thời tiết từ trang bất kỳ .32

Hình 17: Giao diện tùy chọn thông tin thời tiết 32

Hình 18: Giao diện tùy chọn thông tin về tỷ giá ngoại tệ .33

Hình 19: Giao diện tùy chọn thông tin về giá vàng .33

Hình 20: Giao diện tùy chọn về tin tức .34

Hình 21: Giao diện tùy chọn thông tin từ trang web bất kỳ 34

Trang 9

MỞ ĐẦU

Với sự phát triển mạnh mẽ của Internet trong những năm gần đây, đặc biệt là

sự bùng nổ của World Wide Web, Internet đang làm thế giới thay đổi từng ngày,từng giờ Internet cùng với các dịch vụ hỗ trợ đã trở nên không thể thiếu cho hoạtđộng của từng cá nhân cho đến từng doanh nghiệp.Tuy nhiên cùng với sự phát triển

và phổ cập của Internet thì thông tin ngày càng trở nên đa dạng và có sự trùnglặp.Việc lựa chọn và cập nhật thông tin một cách chính xác, nhanh chóng và thuậntiện là một vấn đề đặt ra.Gadget là một ứng dụng mà ngay từ khi ra mắt trên hệ điềuhành Windowns Vista đã không chỉ thể hiện được sự hữu ích và thuận tiện của nó

mà còn góp phần trang trí cho màn hình destop của bạn Gadget đem lại rất nhiềulợi ích và việc sử dụng nó hiện nay đã trở thành một nhu cầu rất phổ biến và thiết

thực Vì vậy mục tiêu của khóa luận là “Xây dựng ứng dụng Gadget” kết nối đến

các dich vụ web để truy xuất dữ liệu và hiện thị ra cho người dùng cuối như: khaithác dịch vụ RSS, tỉ giá trao đổi ngoại tệ, tỉ giá vàng, thông tin thời tiết các vùng,miền…Ứng dụng cho phép người sử dụng chọn nguồn lấy thông tin từ các trangweb uy tín hay một trang web khác mà người sử dụng mong muốn Khóa luận tậpchung nghiên cứu các phương pháp lấy thông tin từ các nguồn như RRS, XMLfeed, các Webservices hay Web page, tìm hiểu cách mà Gadget kết nối đến các dịch

vụ để lấy thông tin cập nhật mới nhật và tương tác với người sử dụng

Kết cấu của khoá luận bao gồm các chương sau:

- Chương 1: Giới thiệu về Gadget Nêu các khái niệm cơ bản, phân loại, cấutrúc, và nguồn dữ liệu mà Gadget sử dụng

- Chương 2: Tìm hiểu, phân tích các kiến thức nền tảng và các công nghệ liênquan AJAX, XML, RSS, Xpath, và các kĩ thuật sử dụng của Web Spider lấy thôngtin từ một trang web bất kỳ

- Chương 3: Xây dựng ứng dụng Gadget Mô tả các chức năng, các module,giao diện của chương trình

- Chương 4: Cài đặt và thực nghiệm Gadget

- Chương 5: Kết luận và hướng phát triển

Trang 10

Chương 1: Giới thiệu Gadget

Gadget có thể chạy trên nhiểu nền tảng khác nhau, Có 3 dạng nền tảng Gadgetcủa Microsoft đó là [8] :

 Sidebar Gadget hay còn gọi là Windown Sidebar: sử dụng trên màn hìnhdesktop của máy tính để bàn hay xách tay

 Web Gadget: chạy trên bất cứ trình duyệt web nào và thường được lưu trữtrong Live.com hoặc Live Spaces

 SideShow Gadget: là các thiết bị phần cứng sử dụng trên máy tính xáchtay hay các thiết bị thông minh di động…

Trong khóa luận chỉ đề cập đến các ứng dụng Sidebar Gadget và gọi tắt Gadget.Trong chương này tác giả sẽ trình bày nhưng khái niệm cơ bản về Gadget, cấu trúc,phân loại, nguồn dữ liệu mà Gadget sử dung

Trang 11

Hình 1: Minh họa GadgetGadget cho phép bạn truy cập nhanh vào các ứng dụng web hay truy cập vàochính chiếc máy tính của bạn Nó làm giảm khoảng cách giữa thông tin hữu ích vàngười sử dụng bằng cách cung cấp thông tin trong một định dạng sẵn sàng trênGadget, qua đó giúp người sử dụng tiết kiệm được thời gian và cũng như thao tác.

Đối với nhiều người Gadget là một tiện ích tuyệt vời với nhiều tính năng mớitrong hệ điều hành Windowns Vista Gadget cung cấp các thông tin mà người dùngcần truy cập thường xuyên hay các công cụ với đa dạng chức năng sẵn sàng để sửdụng và dễ dàng truy nhập được thiết kế tiết kiệm tối đa bộ nhớ của CPU

Thực chất nó không phải một dạng file thực thi kiểu mới mà nó bao gồm HTML,CSS, XML, JavaScript,và các tập tin hình ảnh tất cả phối hợp để làm nên một Gadget

Có thể lưu trữ một trang web mini, gọi một dich vụ web, tích hợp một ứng dụng kinhdoanh thương mại, hoặc thậm chí gọi các API hệ thống để tạo ra một ứng dụng tùychỉnh

1.2 Cấu trúc một Gadget

Gadget là một tiện ích được phát triển bằng cách sử dụng công nghệ web như

là HTML, CSS, và JavaScript hoặc có thể sử dụng các công nghệ DHTML, AJAX

và ActiveX COM cho chức năng cao cấp Một tiện ích có thể được dùng như mộtứng dụng HTML với các tính năng tiên tiến Tất cả các giao diện sử dụng trong cáctiện ích, các tiện ích chính của cửa sổ, các trang cài đặt, cũng như cửa sổ flyout, tất

cả đều là trang HTML

Các file chính của một Gadget :

-Gadget.xml : Đây là file rất quan trọng , nó lưu trữ các thông số cấu hình củaGadget, tên tác giả, phiên bản sản phẩm, bản quyền, thông tin URL dưới dạng thứcXML

Trang 12

<defaultImage src="" />

</host>

</hosts>

</gadget>

-Dòng bôi đen đầu tiên cho biết file html được đưa lên Gadget là file

gadget.html ở cùng thư mục, dòng bôi đen thứ 2 xác định quyền hạn Gadget này là

toàn quyền truy xuất hệ thống, nếu không đặt là full thì các chức năng truy xuất hệthống của gadget có thể sẽ không dùng được do bị lỗi cấm truy nhập

-File [Gadget_Name].html : hầu hết các Gadget đều có 3 tập tin HTML cho cửa

sổ chính (đây là file được xác định thông qua tag : src trong file XML chính, fileHTML này sẽ được hiện thị khi Gadget được cài đặt), trang cài đặt và cửa sổ flyout.Mỗi trang HTML này include đến các file CSS và JavaScript tương ứng

-Các file CSS : viết tắt của chữ Cascades Style Sheet, các file này được dùng để

mô tả cách trình bày của các phân tử trong file HTML tương ứng, rất quen thuộc vớicác ứng dụng web

-Các file JS : là thành phần cốt lõi của ứng dụng Gadget Nếu như coi các thànhphần HTML và cách trình bày CSS là khung xương và cơ thể thì Javascript là thànhphần làm nên sức sống cho các ứng dụng Gadget Nó chứa các đoạn mã thực thi cácchức năng của Gadget, xử lí thông tin và hiện thị cho người dùng cuối

Trang 13

Hình 2: Các file chính của một Gadget.

-Data application : ứng dụng có truy xuất dữ liệu sử dụng HTML ,DHTML,

DOM, AJAX Gadget loại này có thể kết nối đến các dịch vụ web để truy xuất dữ liệu

và hiển thị ra cho người dùng cuối như: khai thác dịch vụ RSS, chỉ số chứng khoán,thông tin thời tiết các vùng miền…Đây cũng là Gadget mà khóa luận sẽ xây dựng ởcác chương tiếp theo của khóa luận

-Mini utilities : có tác dụng như một tiện ích dùng ActiveX object, Gadget API

và DHTML…ví dụ như các Gadget đo CPU, hiển thị đồng hồ số… hay thậm chí làcác tiện ích truy xuất tài nguyên hệ thống và rất nhiều công việc khác

Hình 3: Phân loại Gadget

Trang 14

1.4 Dữ liệu mà Gadget sử dụng

Gadget cung cấp thông tin và tương tác với người sử dụng một cách độc đáo Nó

có thể truy xuất thông tin từ nhiều nguồn khác nhau :

 RSS/XML

 Các trang web

 Các dịch vụ web

 Tài nguyên hệ thống : file, folder

 Và đương nhiên truy xuất được vào các hệ quản trị dữ liệu nhờ ActiveXobject [8]…

Hình 4: Các nguồn dữ liệu mà Gadget sử dụng

Trang 15

Chương 2: Các kiến thức nền tảng và công nghệ

liên quan

Trong chương trước chúng ta đã biết ứng dụng mà khóa luận hướng đến là mộtData application Gadget truy xuất đến các nguồn dữ liệu là XML, RSS hay các trangweb sử dụng DOM, AJAX, Xpath…để phân tích lấy dữ liệu trả về sau đó hiện thị trênGadget

Hình 5: Mô hình một Data application Gadget

Trong chương này khóa luận sẽ trình bày những nét cơ bản về các công nghệnày, những điểm nội bật nhất và vai trò của chúng trong việc xây dựng ứng dụngGadget

2.1 Giới thiệu về XML

Như trình bày trong phần trước thì một trong những nguồn truy xuất dữ liệuchính của Gadget là các file XML Vậy thì XML là gì? Và vì sao nó lại được sử dụngtrong việc lấy thông tin từ các trang web?

XML (Extensible Markup Language) ra đời tháng 2/1998, là ngôn ngữ có kiếntrúc gần giống HTML nhưng XML nhanh chóng trở thành một chuẩn phổ biến trong

Trang 16

việc chuyển đổi thông tin qua các trang web sử dụng giao thức HTTP Trong khiHTML là ngôn ngữ chủ yếu về hiện thị dữ liệu thì XML lại phát triển mạnh về việctruyền tải ,trao đổi và thao tác dữ liệu bằng XML XML đưa ra một định dạng chuẩncho cấu trúc của dữ liệu hoặc thông tin bằng việc tự định nghĩa định dạng của tài liệu.Bằng cách này dữ liệu được lưu trữ bằng XML sẽ độc lập với việc xử lí.Vì vậy XML

ra đời đáp ứng được yêu cầu ngày càng cao của các nhà lập trình trong vấn đề trao đổi

và xử lí thông tin Bản thân của XML tuy không có gì khó hiểu, nhưng các công cụchuẩn được định ra để làm việc với XML như Document Object Model - DOM,XPath, XSL, v.v thì rất hữu hiệu, và chính các chuẩn nầy được phát triển khôngngừng

2.1.2 Tại sao lại sử dụng XML

Trong qua trình xây dựng và phát triển, XML đã đối mặt và đối đầu với nhiềuthử thách trong việc thuyết phục người lập trình rằng XML là sự lựa chọn hàng đầu vì

nó dễ hiểu, dễ đọc và dễ dàng thực hiện Sau đây là một số lợi ích mà việc sử dụngXML đem lại:

-XML có thể tách rời dữ liệu Sử dụng XML, dữ liệu được chứa trong các tập tinXML riêng biệt

-XML có thể mô tả thông tin của những đối tượng phức tạp mà cơ sở dữ liệuquan hệ không thể giải quyết được

-XML có thể dùng để chuyển đổi dữ liệu giữa các hệ thống không tương thích.-XML được dùng để chia sẻ dữ liệu với những tập tin văn bản đơn giản dễ hiểu -XML cũng được dùng để lưu trữ dữ liệu, có thể làm cho dữ liệu của chúng tahữu ích hơn

Như vậy chúng đã biết được lợi ích và vai trò của XML trong vấn đề lưu trữ vàtrao đổi thông tin Vấn đề tiếp theo là cấu trúc một tài liệu XML sẽ như thế nào và làmsao để Gadged có thể lấy thông tin từ nó

2.1.3 Những thành phần của một tài liệu XML

Mục đích của việc tổ chức thông tin là để co người có thể đọc và hiểu đượcnhững gì mà nó muốn chuyển tải Bây giờ chúng ta tổ chức tập tin theo định dạng mộttài liệu XML một cách đơn giản nhất

<?xml version=”1.0” encoding=”UTF-8”?>

Trang 17

Khai báo : Mỗi một tài liệu XML có một chỉ thị khai báo

<?xml version=”1.0”?>

Định nghĩa tài liệu XML tuân theo chuẩn của W3C đây là phiên bản 1.0

Chú thích : được khai báo như sau:

<! Chú thích >

Phần tử (Elements): Một tài liệu XML được cấu thành từ những phần tử.Một

phần tử có thẻ mở và thẻ đóng, Giữa thẻ mở và thẻ đóng là nội dung của phần tử đó.Phần tử có thể chứa dữ liệu hoặc lồng vào một phần tử khác

Phần tử gốc (Root) : Trong tài liệu XML chỉ có một phần tử gốc, và phần tử này

sẽ chứa tất cả những phần tử của tài liệu XML do chúng tạo ra

Thuộc tính (Attributes): Như đã trình bày ở trên, một phần tử có thể chứa dữ

liệu hoặc chứa phần tử khác hoặc cả hai Bên cạch đó, phần tử có thể rỗng, khi đó nó

có thể chứa thuộc tính Một thuộc tính chỉ là một sự lựa chọn để gắn dữ liệu đến phần

tử Một thuộc tính đặt trong thẻ mở của phần tử và chỉ ra giá trị của nó bằng cách sửdụng cặp “name=value”

2.1.4 Một tài liệu XML hợp lệ

Như khóa luận đã đề cập ở trên một tài liệu XML hợp khuôn dạng (well-formed)

là yếu tố đâu tiên khi tạo lập một tài liệu XML Hợp khuôn dạng ở đây có nghĩa là một

Trang 18

tài liệu chỉ có một nút gốc, mỗi phần tử phải có thẻ mở, thẻ đóng phải lồng nhau chínhxác, tên thuộc tính phân biệt chữ hoa chữ thường và chỉ xuất hiện một lần trong thẻ

mở Nhưng một tài liệu well-formed không có nghĩa là nó hợp lệ Muồn kiểm tra sựhợp lệ của tài liệu XML ta phải dựa vào Document Type Definition (DTD) hoặcSchema.XML Việc sử dụng một tài liệu XML hợp lệ sẽ giúp cho Gadget dễ dàngtrong việc truy xuất dữ liệu từ các nguồn này

2.2 Tìm hiểu RSS

Truy nhập các trang web thông tin lớn như Reuters, CNN, Daily YahooNews… bạn sẽ bắt gặp những biểu tượng “vừa quen, vừa lạ” mang tiêu đề RSS(hoặc RSS Feed) Vậy thực chất RSS là gì? Vì sao Gadget lại sử dụng nguồn dữ liệunày?

RSS viết tắt của cụm từ “Rich Site Summary” (tóm tắt giàu thông tin) hoặc

"Really Simple Syndication" (đồng bộ hoá cực kỳ đơn giản); được xây dựng dựatrên ngôn ngữ đánh dấu mở rộng XML nhằm tạo ra các kênh thông tin (feed) vàchuyển tới cho người đọc RSS do Netscape phát triển vào cuối những năm 90s,hoạt động theo nguyên tắc tinh giản, rút gọn các trang tin điện tử (chỉ lấy tiêu đề,loại bỏ ảnh, định dạng trang trí…) Nội dung này có thể được chuyển trực tiếp tớingười đọc hoặc “gắn” trên các trang web khác với đường dẫn ngược trở lại trangweb ban đầu

Thông thường, có thể bạn sẽ khó có thể tìm thêm gì trong nguồn RSS ngoàimột danh sách khoản mục hoặc nội dung RSS thường được sử dụng trong việc chia

sẻ các đầu mục tin, tuy nhiên nó có thể ứng dụng trên hầu hết các dạng nội dungweb RSS tạo cho người quản lý web (Webmaster) khả năng tự động cập nhật trongnhững phần nhất định của một trang web

Để hỗ trợ người đọc, hiện đã có rất nhiều phần mềm đóng vai trò trung gian,

“biên dịch” nội dung các “feed” và chuyển chúng sang định dạng dễ đọc hơn Ngoài

ra, thẻ lệnh cấu thành RSS đã được chuẩn hoá, nên RSS có thể được đọc ở nhiềuhình thức và trên nhiều thiết bị ví dụ điện thoại di động, thiết bị hỗ trợ cá nhân kỹthuật số- PDA, vv

2.2.1 Tại sao nên sử dụng RSS

Đồng bộ hoá thông tin (RSS) gợi ra mô hình “xuất bản và đăng ký” (publish andsubscribe) Trong đó, những nội dung được xuất bản từ một nguồn có thể được cungcấp qua nhiều kênh theo phương thức “đồng bộ hoá" (syndicated) Lợi thế nổi bật của

Trang 19

hình thức này là thông tin được “đẩy” đi liên tục từ nguồn tới các đối tượng người đọc.RSS trở thành một mắt xích quan trọng trong việc tạo ra các luồng truy nhập tới trangweb gốc Lấy ví dụ, bạn có thể thấy trên một trang web nào đó một tiêu đề tin hấp dẫn.Khi bạn kích chuột vào tin đó, bạn sẽ được liên kết tới RSS của trang web đó Trongthế giới Internet, nơi có hàng triệu trang web đang lôi kéo người sử dụng truy cập, bất

cứ công cụ nào có thể giúp bạn tạo ra các kết nối với người dùng đều có vai trò quantrọng sống còn Bản thân nhà cung cấp thông tin cũng không sợ “mất bản quyền thôngtin” vì các tiêu đề trong RSS feed đều liên kết ngược trở lại trang web xuất phát

Một trong những lý do quan trọng nhất cho việc ứng dụng RSS là khả năng của

nó trong việc tiếp cận tới người dùng mà không cần phải phát động một chiến dịchquảng cáo rầm rộ và tốn kém Nếu bạn có những thông tin hấp dẫn trên trang web củamình, RSS có thể giúp bạn giới thiệu và truyền tải tới người dùng và thu hút sự quantâm của khách hàng

Trong khi đó, người đọc cũng thực sự hưởng lợi Họ có thể tiếp cận thông tintheo ý thích xét cả ở ba tiêu chí: ở đâu- khi nào- và như thế nào Người đọc tiết kiệmđược không ít thời gian vì RSS feed lưu trữ những đầu mục thông tin ngắn gọn, liêntục được cập nhật Đối với những ai chỉ đơn thuần sử dụng Internet và không cần tớitính năng quảng cáo của RSS, công nghệ này lại giúp họ tìm kiếm các thông tin quantrọng qua các nguồn RSS, thậm chí từ các trang web mà họ ít khi hoặc không bao giờtruy nhập

2.2.2 Những điểm mạnh của RSS

-RSS cập nhật thông tin: Ưu việt hơn email, đăng ký một RSS feed, thông tin từ

nhà cung cấp sẽ liên tục được cập nhật; bạn không phải vào lại trang web hoặc đăng kýmột RSS feed khác

-RSS tiết kiệm về chi phí Phí chuyền tải và phân phối giảm đáng kể khi dùng

RSS Băng thông được giải phóng đáng kể với lượng thông tin truyền tải lớn và khôngcần nhiều email hay các mã lệnh định dạng cầu kỳ Bản thân trên một trang web, bạnchỉ cần một khoảng không khiêm tốn để đặt biểu tượng cho RSS feed

-RSS tương hỗ với nhiều định dạng Ngoài những định dạng thông thường như

HTML, ASP… RSS còn có tính mở, hỗ trợ nhiều định dạng ngôn ngữ, nhiều thiết bịđầu cuối (máy tính, điện thoại di động, PDA )

Trang 20

-RSS độc lập với email Tuy nhiên, các RSS feed vẫn có thể được “thiết kế” để

nằm ngay trong email của bạn, bổ sung thêm những tính năng mới cho công cụ nhậnthông tin điện tử truyền thống

-RSS cho phép tổ chức nội dung Thông tin có thể dễ dàng lưu trữ, phân loại và

sắp xếp theo từng chủ đề một cách hoàn toàn tự động

-Người nhận RSS hoàn toàn chủ động.Đăng ký và chối bỏ một news feed hoàn

toàn phụ thuộc vào bản thân người sử dụng Điểm này xác lập sự thuận tiện của RSSkhi thực tế, không ít người đành phải chấp nhận “chung thân” một khi đăng ký một bảntin thư

-RSS đảm bảo quyền cá nhân Người đăng ký RSS feed không phải cung cấp

email cho nhà cung cấp thông tin- mà nhiều khả năng điểm tới cuối cùng là cơ sở dữliệu của các công ty chuyên về quảng cáo

-RSS có thể tái sử dụng Thông tin trong RSS hoàn toàn có thể tái sử dụng cho

nhiều mục đích: cung cấp cho các kênh thông tin khác (nằm trong feed khác), tích hợpvào các thư viện động hoặc nguyên liệu phục vụ quá trình học tập v.v

-RSS an toàn Xuất phát từ phương thức truyền tải, RSS không thể mang theo

virus hoặc trojan như newsletter hoặc các tệp tin đính kèm Trong trường hợp các feed

có mang các đoạn mã độc hại, người sử dụng có thể dễ dàng “phân vùng” và chủ độngloại bỏ thông tin

-RSS linh hoạt trong cách cung cấp thông tin Người sử dụng tiết kiệm được thời

gian, thông tin được cung cấp ở dạng tóm tắt (thường chỉ là các tiêu đề- title) Chính vìvậy, hàm lượng thông tin truyền tải lớn trong mỗi feed (loại bỏ các loại hình quảng cáopop-up, định dạng mang tính trang trí…) Bạn chỉ click vào những siêu liên kết để đếnvới nội dung chi tiết mà mình thực sự quan tâm Ngay khi đã được gửi đi (đồng bộ hoá

dữ liệu), các nhà cung cấp vẫn có thể chỉnh sửa, cập nhật thông tin trong các RSS feed

2.2.3 Ứng dụng RSS trong việc xây dựng Gadget

Hiện nay, sử dụng RSS trên web trở thành một hiện tượng thực sự Trong nhữngngày đầu phát triển của web, các trang web cũng được liên kết với nhau song dữ liệugiữa chúng thì thực sự hiếm khi được chia sẻ Hiển nhiên, quan niệm đã thay đổi theothời gian Các trang web sử dụng RSS tăng lên nhanh chóng với những lý do rõ ràng vàhợp lý Cùng với sự phát triển của RSS và những lợi ích to lớn mà nó đem lại thì hầuhết các trang web lớn đều hỗ trợ công nghệ này và chúng chính là nguồn cung cấpthông tin đa dạng cho các Gadget

Trang 21

Ứng dụng công nghệ RSS, xây dựng chức năng lấy tin tức cập nhật từ mới nhất

từ các trang báo lớn Người dùng có thể xem cùng một lúc các trang web này màkhông cần vào trực tiếp trang đó

2.3 Xpath

2.3.1 Giới thiệu

Qua phần trình bày trên, chúng ta đã biết được cấu trúc và cú pháp của XMLtương đối đơn giản và bản chất của việc lấy dữ liệu từ các nguồn XML, RSS chính làviệc phân tích một tài liệu XML Bước tiếp theo là tìm hiểu cách nào xử lý một tài liệuXML để lấy ra thông tin mong muốn

Như vậy để xử lí một tài liệu XML, chương trình ứng dụng phải có cách dichuyển bên trong tài liệu để lấy ra giá trị của các phần tử (Elements) hay thuộc tính(Attributes) Do đó ngôn ngữ XML Path được ra đời, mà chúng ta gọi tắt là Xpath.Xpath đóng một vai trò quan trọng trong việc truy vấn dữ liệu cho các chương trìnhứng dụng vì nó cho phép ta lựa chọn hay sàng lọc ra những phần tử nào mình muốn đểtrao đổi hay hiện thị [1]

Nếu khi làm việc với cơ sở dữ liệu ta dùng các phát biểu SQL nhưSELECT…FROM table WHERE để trích ra một mẩu tin từ một bảng, thì khi làmviệc với tập tin XML, Xpath cho ta những những biểu thức (expressions) về điều kiệngiống như mệnh đề WHERE trong SQL Một tài liệu XML được xem như là một sựthể hiện của cấu trúc phân cấp ở dạng cây của nhiều phần tử, mỗi phần tử được xemnhư là một node của cây, XPath đem lại khả năng duyệt các node trên cây hoặc lựachọn chúng theo các tiêu chí nào đó, dựa trên các mối quan hệ như cha - con, tổ tiên -con cháu Một biểu thức XPath (Xpath expression) có thể chọn một node hoặc một tậphợp các node, hoặc nó có thể trả lại một giá trị dữ liệu dựa trên một hoặc nhiều nodetrong tài liệu XPath hiện có 2 phiên bản là XPath 1.0 và XPath 2.0

Trang 23

Hình 6: Minh họa cấu trúc dạng cây của file XML.

Đường dẫn tuyệt đối.

Nếu đường dẫn XPath bắt đầu bởi dấu / thì có nghĩa đây là một đường dẫn tuyệtđối bắt đầu từ phần tử gốc

Trong hình ở trên, bây giờ chúng ta muốn chọn nút Order ta viết như sau:

Trong trường hợp muốn đi đến thuộc tính của nút thì chúng ta cần phải chỉ rõ từ

khóa Attribute trong cú pháp nguyên hoặc @ trong cú pháp tắt.

Để lấy thuộc tính OrderNo của nút Order ta dùng cú pháp XPath như sau:

Cú pháp nguyên: /child::Order/Attribute::OrderNo.

Cú pháp tắt: /Order/@OrderNo.

Đường dẫn tương đối

Khi chúng ta muốn trích một phần tử nào đó mà chúng ta chỉ biết tên của phần tửnày chứ chúng ta không biết là phần tử này nằm ở vị trí nào thì chúng ta có thể dùng

đường dẫn tương đối để làm điểu này Chúng ta dùng dấu // để chỉ cho trình phân tích

biết đây là đường dẫn tương đối

Ví dụ, để trích các phần tử có tên là Product chúng ta viết như sau:

Ngày đăng: 15/02/2014, 13:17

HÌNH ẢNH LIÊN QUAN

 Sidebar Gadget hay còn gọi là Windown Sidebar: sử dụng trên màn hình desktop của máy tính để bàn hay xách tay. - XÂY DỰNG ỨNG DỤNG GADGET
idebar Gadget hay còn gọi là Windown Sidebar: sử dụng trên màn hình desktop của máy tính để bàn hay xách tay (Trang 10)
Hình 2: Các file chính của một Gadget. - XÂY DỰNG ỨNG DỤNG GADGET
Hình 2 Các file chính của một Gadget (Trang 13)
Hình 4: Các nguồn dữ liệu mà Gadget sử dụng. - XÂY DỰNG ỨNG DỤNG GADGET
Hình 4 Các nguồn dữ liệu mà Gadget sử dụng (Trang 14)
Hình 5: Mơ hình một Data application Gadget. - XÂY DỰNG ỨNG DỤNG GADGET
Hình 5 Mơ hình một Data application Gadget (Trang 15)
Hình 7: Minh họa cấu trúc DOM của một trang HTML. - XÂY DỰNG ỨNG DỤNG GADGET
Hình 7 Minh họa cấu trúc DOM của một trang HTML (Trang 25)
Hình 8: Mơ hình tương tác trong một ứng dụng web truyền thống.. - XÂY DỰNG ỨNG DỤNG GADGET
Hình 8 Mơ hình tương tác trong một ứng dụng web truyền thống (Trang 26)
Hình 9: Mơ hình tương tác trong ứng dụng web dùng AJAX. - XÂY DỰNG ỨNG DỤNG GADGET
Hình 9 Mơ hình tương tác trong ứng dụng web dùng AJAX (Trang 27)
Hình 10: So sánh hai mơ hình ứng dụng web: truyền thống và sử dụng AJAX - XÂY DỰNG ỨNG DỤNG GADGET
Hình 10 So sánh hai mơ hình ứng dụng web: truyền thống và sử dụng AJAX (Trang 28)
Hình 1 2: Giao diện hiện thị thông tin thời tiết - XÂY DỰNG ỨNG DỤNG GADGET
Hình 1 2: Giao diện hiện thị thông tin thời tiết (Trang 38)
Hình 1 3: Giao diện hiện thị thơng tin tỷ giá ngoại tệ. - XÂY DỰNG ỨNG DỤNG GADGET
Hình 1 3: Giao diện hiện thị thơng tin tỷ giá ngoại tệ (Trang 38)
Hình 1 4: Giao diện hiện thị thông tin giá vàng. - XÂY DỰNG ỨNG DỤNG GADGET
Hình 1 4: Giao diện hiện thị thông tin giá vàng (Trang 39)
Hình 1 5: Giao diện hiện thi tin tức và cửa sổ flyout. - XÂY DỰNG ỨNG DỤNG GADGET
Hình 1 5: Giao diện hiện thi tin tức và cửa sổ flyout (Trang 39)
Hình 17: Giao diện tùy chọn thơng tin thời tiết. - XÂY DỰNG ỨNG DỤNG GADGET
Hình 17 Giao diện tùy chọn thơng tin thời tiết (Trang 40)
Hình 1 6: Giao diện hiện thị thơng tin thời tiết từ trang web bất kỳ. - XÂY DỰNG ỨNG DỤNG GADGET
Hình 1 6: Giao diện hiện thị thơng tin thời tiết từ trang web bất kỳ (Trang 40)
Hình 18: Giao diện tùy chọn thông tin về tỷ giá ngoại tệ. - XÂY DỰNG ỨNG DỤNG GADGET
Hình 18 Giao diện tùy chọn thông tin về tỷ giá ngoại tệ (Trang 41)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

w