Chương 1 – TỔNG QUAN: chương này nêu tổng quan về đề tài bao gồm vấn đề đặt ra để giải quyết là gì, những gì trên thế giới đã làm, mình định làm gì, lợi ích của đề tài là gì và nội dung nghiên cứu là gì. Chương 2 – CƠ SỞ LÝ THUYẾT: chương này trình bày các kiến thức cơ sở phục vụ cho đề tài, phân tích thiết kế, xây dựng tổ chức CSDL và các thuật toán của đề tài. Chương 3 – CÀI ĐẶT ỨNG DỤNG: chương này trình bày các công nghệ sử dụng để cài đặt ứng dụng, kiến trúc ứng dụng, thiết kế chi tiết phần mềm ứng dụng và kết quả thực nghiệm. Chương 4 – KẾT LUẬN: chương này nêu kết luận và những ý nghĩa đạt được cũng như những vấn đề còn tồn tại của luận văn, từ đó đưa ra hướng phát triển của đề tài trong tương lai.6 Một số công cụ tìm kiếm Để phục vụ cho việc tìm kiếm thông tin trên internet, có rất nhiều hãng phần mềm phát triển các công cụ tìm kiếm rất mạnh.
Ở đây tác giả luận văn xin giới thiệu một số công cụ tìm kiếm mạnh ở trên thế giới và Việt Nam.1 Google (http://www.com) Google là một công cụ tìm kiếm mạnh thông dụng nhất hiện nay, với google bạn có thể truy xuất tìm kiếm thông tin trên kho dữ liệu khổng lồ internet chỉ bằng một vài thao tác đơn giản. Để tìm kiếm bạn chỉ cần nhập vào cụm từ tìm kiếm rồi nhấn nút tìm kiếm, google sẽ trả về cho bạn danh sách kết quả các website phù hợp với cụm từ tìm kiếm. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.2 Ask ( http://www.com/ ) Với công cu ̣ Ask , khi tim ̀ thông tin kết quả tìm kiếm sẽ hiển thị cả những câu hỏi gợi ý khác có liên quan đến câu hỏi truy vấn trong phầ n Q &A, giúp người sử dụng nghiên cứu sâu hơn vấn đề của họ. Phần tìm kiếm ảnh có chức năng phân loại ảnh màu và ảnh đen trắng.3 Exalead (http://www.com/search) Exalead là công cụ tìm kiếm được sử dụng rất rộng rãi ở Châu Âu.
Công cu ̣ tìm kiếm này có giao diện tìm kiếm dễ sử dụng cho phép người dùng tìm thông một cách dễ dàng. Kết quả tìm kiếm phù hợp được Exalead trả về là danh sách các website và bao gồm cả các đánh giá thống kê về ngôn ngữ sử dụng và nguồn gốc của các bài báo từ nước nào bằng biểu đồ trực quan. Ví dụ: Với từ khóa tìm kiếm “thị trường chứng khoán việt nam” Thì kết quả trả về danh sách một số website hợp lệ và các thống kê từ Exalead như sau: 1.4 Google Scholar ( http://scholar.com/) Google Scholar là công cu ̣ tim ̀ kiế m chuyên sâu dành cho học giả, giúp người dùng tim ̀ kiế m các tài liê ̣u ho ̣c thuâ ̣t (luâ ̣n văn , luâ ̣n án , sách, các bài báo khoa ho ̣c ,…) về nhiề u lĩnh vực. Google Scholar có chức năng tim ̀ kiế m đơn giản và chức năng tìm kiếm nâng cao để tăng tính chính xá c và hiê ̣u quả cho LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 6 viê ̣c tim ̀ thông tin.
Ngoài ra người dùng còn có thể sử dụng chức năng “Scholar preferences” để lựa cho ̣n cách hiển thị kết quả tìm kiếm hay chức năng “Library Links- online and offline” để tìm hiể u xem mô ̣t thư v iê ̣n đa ̣i ho ̣c ba ̣n đang quan tâm có tài liê ̣u đó hay không .com/) Scirus là công cụ tìm kiếm web về thông tin khoa học. Scirus cho phép các nhà khoa học tìm kiếm không chỉ nội dung các bài báo , các trang web của các nhà khoa học , các phần mềm học tập ,… mà còn cả các thông tin riêng của các tổ chức khoa học.vn) Xalo là công cụ tìm kiếm được Công ty Tinh Vân phát triển. Phiên bản beta của công cụ này được Công ty Tinh Vân cho ra mắt vào cuối tháng 3 năm 2008. Hiện công cụ này có bốn dịch vụ tìm kiếm là Web, Tin tức, Blog và Diễn đàn.com) Timnhanh vừa là một trang thông tin tổng hợp, vừa là một công cụ tìm kiếm theo kiểu Yahoo và được chính Yahoo hỗ trợ.
Trang này còn cung cấp miễn phí các dịch vụ như e-mail, tạo blog, tra cứu từ điển.com) Vatgia là website tìm kiếm chú trọng đến lĩnh vực thương mại với đầy đủ các tính năng như tổng hợp, phân chia hàng hóa một cách khoa học. Cung cấp đầy đủ thông tin về các loại sản phẩm, dịch vụ, được trình bày một cách khoa học; giúp người tiêu dùng có thể tìm được những sản phẩm, dịch vụ một cách nhanh nhất.com) Công cụ tìm kiếm Baamboo thuộc Công ty cổ phần truyền thông Việt Nam. Baamboo giúp người dùng tìm kiếm nhạc mp3, video, lời bài hát.7 Kết luận chương Chương này trình bày tổng quan bài toán đưa ra để nghiên cứu giải quyết; mục đích, yêu cầu, nội dung nghiên cứu của luận văn; tình hình nghiên cứu trong, ngoài nước và một số công cụ tìm kiếm đã có. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 7 Chương 2 - CƠ SỞ LÝ THUYẾT 2.NET Framework Mục này trình bày các kiến thức cơ bản về .Net Framework, các lớp thư viện cơ sở trong .Net Framework được sử dụng để lập trình thực nghiệm cho luận văn; thực hiện thống kê các bài báo trên internet và thực hiện trích rút thông tin từ các bài báo đó.Net Framework là một nền tảng công nghệ phát triển phần mềm giúp các nhà phát triển phần mềm có thể xây dựng các ứng dụng nhanh và hiệu quả trên nhiều ngôn ngữ lập trình khác nhau như C#.1 Mô hình kiến trúc .Net FrameWork Hình 1.Net Framework bao gồm 3 tầng: Tầng ứng dụng: gồm có ASP.NET và Windows Forms.NET cung cấp các thành phần thực hiện xây dựng các ứng dụng web (chạy trong mạng cục bộ hay trên mạng internet), các dịch vụ web.
- Windows Forms: cung cấp các thành phần thực hiện phát triển các ứng dụng chạy trên windows. Tầng giữa: cung cấp các thư viện lập trình cơ sở bao gồm các gói thư viện phục vụ cho lập trình mạng (Net), các gói thư viện giao tiếp với database (ADO.NET), các gói thư viện cho bảo mật (Security), … Tầng dưới cùng: quản lý việc biên dịch và chạy các ứng dụng. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 8 Khi sử dụng .Net Framework, chúng ta sẽ không còn phải quá quan tâm đến việc lựa chọn ngôn ngữ nào để phát triển ứng dụng. Thậm chí trong một ứng dụng chúng ta có thể viết bằng nhiều ngôn ngữ .NET khác nhau.
Điều này là do tất cả các ngôn ngữ .NET đều được quản lý bởi CLR (Common Language Runtime).2 Lớp WebRequest và WebResponse Lớp WebRequest và WebResponse là hai lớp cơ sở nằm trong gói thư viện System. Hai lớp này được xây dựng để phục vụ cho lập trình mạng giao tiếp giữa Client và Server. Vì luận văn là đề tài chủ yếu nghiên cứu sâu về các thuật toán tìm kiếm và trích rút thông tin trên mạng internet do đó hai lớp WebRequest và WebResponse có ý nghĩa cực kỳ quan trọng trong việc lập trình thực nghiệm. Hai lớp WebRequest và WebResponse tương ứng được sử dụng trong luận văn để thực hiện gửi yêu cầu và lấy dữ liệu từ các nguồn thông tin trên internet thông qua giao thức HTTP.
Lớp WebRequest dùng để tạo ra một yêu cầu gửi tới một Website cụ thể. Lớp WebResponse dùng để lấy thông tin trả về từ WebServer. Để tạo một thể hiện (instance) của lớp WebRequest ta dùng phương thức Create(URL). Để lấy dữ liệu từ đối tượng WebResponse ta dùng phương thức GetResponseStream() trả về kiểu dữ liệu Stream.
Thuộc tính/Phương thức Diễn giải System.RequestUri Lấy các URI từ các nguồn được tham chiếu đến.Headers Lấy các tiêu đề tên/cặp giá trị liên kết với yêu cầu.ContentLength Lấy hoặc gán nội dung chiều dài của yêu cầu được gửi đi.ContentType Lấy hoặc gán kiểu nội dung của yêu cầu được gửi đi.Credentials Lấy hoặc gán Credentials được dùng để xác nhận yêu cầu.PreAuthenticate Lấy hoặc gán giá trị để gửi thông tin xác thực với yêu cầu.GetRequestStream() Lấy dòng văn bản cho dữ liệu đến nguồn dữ liệu.GetResponse() Lấy phản hồi của một yêu cầu. Một số thuộc tính và phương thức của lớp WebRequest LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 9 Thuộc tính/Phương thức Diễn giải System.Headers Lấy các tiêu đề tên/cặp giá trị liên kết với nội dung trả về.ContentLength Lấy chiều dài của nội dung trả về từ server.ContentType Lấy kiểu nội dung của dữ liệu được trả về từ server.GetResponseHe Lấy thông tin của header thông qua ader(string headerName) headerName.GetResponseStr Lấy nội dung trả về từ server. Một số thuộc tính và phương thức của lớp WebResponse Đoạn chương trình bên dưới sử dụng các đối tượng WebRequest và WebResponse thực hiện gửi yêu cầu và nhận kết quả trả về. protected void Button1_Click(object sender, EventArgs e) { string URL = "http://www.vn"; WebRequest request = WebRequest.Create(URL); WebResponse response = request.GetResponse(); StreamReader reader = new StreamReader(response.GetResponseStream()); string str = reader.text + str; txtBox1.text + "\n"; str = reader.3 Lớp HttpWebRequest và HttpWebResponse Lớp WebRequest và WebResponse là các lớp trừu tượng trong gói thư viện System.Net, vì vậy chúng ta không nên sử dụng trực tiếp chúng.
Do đó chúng ta dùng thông qua lớp HttpWebRequest và HttpWebResponse tương ứng để thực hiện gửi yêu cầu và nhận kết quả trả về từ Webserver. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 10 Đoạn chương trình bên dưới sử dụng các đối tượng HttpWebRequest và HttpWebResponse thay thế cho các đối tượng WebRequest và WebResponse. protected void Button1_Click(object sender, EventArgs e) { string URL = "http://www.vn"; HttpWebRequest request = (HttpWebRequest)WebRequest.GetResponse(); String ver = response.ToString(); StreamReader reader = new StreamReader(response.GetResponseStream() ); string str = reader.text + str; txtBox1.text + "\n"; str = reader.4 Trích rút thông tin từ các website có yêu cầu xác thực Khi thực hiện tìm kiếm và trích rút thông tin từ nhiều nguồn khác nhau trên internet, sẽ xuất hiện trường hợp chúng ta truy xuất phải các website được bảo mật, các website đó yêu cầu một số thông tin xác thực trước khi có thể truy xuất vào được. Như vậy trước khi gửi yêu cầu tới website có yêu xác thực chúng ta phải cấu hình thuộc tính WebRequest.Credentials với các thông tin xác thực.
Một số kiểu xác thực mà website thường sử dụng: Website sử dụng Basic authentication hay Digest authentication, chúng ta cần gửi kết hợp username và password bằng cách tạo đối tượng System.NetworkCredential và gán nó vào thuộc tính HttpWebRequest. Website sử dụng Integrated Windows authentication, chúng ta thực hiện tương tự như trên. Chúng ta có thể lấy các thông tin đăng nhập của người dùng hiện hành từ đối tượng System. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 11 Website đòi hỏi chứng chỉ, chúng ta cần nạp chứng chỉ từ một tệp bằng lớp System.X509Certificate, và thêm nó vào tập hợp HttpWebRequest.