- Tì m kiếm các trang chủ của công ty qua từ khóa
- Xử lí các trang chủ của công ty để thu được thông tin về (địa chỉ liên lạc,
đội quản lí) của các công ty
- Xử lí các trang tin tức, trang web ấn bản để thu thập thông tin về các cả
I i i m n 、LC I1,v ; u n g V 1 Ç U, IC I1 c u n g l y , K n a i m n g ;
.,: 1料齡••霉赛霸麵
- Xử lí trang chủ của tạp chí hoặc tin tức để thu thập các trang tin tức
• Lưu trữ thông tin thu thập được.
b) Các yêu cầu chửc năng của hệ thống
\ \ r
Dựa tên đặc tả yêu câu và các ràng buộc vê chức năng, hệ thông được phân chia ra
/
một sô chức năng và mô đun như sau: Chức năng SearchHomePages
-i i "ủ c
Description: tìm kiếm trang chủ của các công ty theo từ khóa. V í dụ, với từ “ softw are,,,ứng dụng sẽ trả lại các trang chủ của tất cả các công ty liên quan đến phần mềm tồn tại trên Internet
Actions: tỉm kiếm trang chù công ty theo từ khóa, ư ớc tính độ ưu tiên của
chúng dựa vào % phù hợp với t ừ khóa, xếp hạng các trang chủ và một số thông tin về những ừang này, bao gồm: tiêu đề, từ khóa, mô tả
Percepts: từ khóa do người dùng nhập vào
Data access: chưa truy cập dữ liệu
Interactions:
_____________________________________________________________.• • • \ 1 ' 'ỉỉệỡ^.:
Chức năng ProcessHomePage : Ỉ t j / ỉ V ơ /
Name: ProcessHomePages
Description: Xử lí trang chủ của một công ty để thu thập các thông tin về công
ty ,bao gồm: địa chi liên lạc, đội quản lí"
Actions: Lấy về trang chủ từ Internet. Phân tích để lấy ra các địa chỉ trang web
khác và thông tin về công ty. Lấ^ về nội dung của các trang web tìm thấy từ Internet và phân tích chúng đê lây ra thông tin về công ty. Lặp lại quá trình cho đến khi nào tất cả các trang web của công ty đó đã được xử lý. Đưa ra thông tin
về công ty
Percepts: địa chỉ trang chủ công ty
Data access: truy cập hàng đợi trong RAM
Interactions:
Chức năng Process news/press page Name: ProcessNewsPages
Description: Xử lí trang tin tức để thu được thông tin về người mà được tham
chiếu trong các bản tin
Actions: Lấy về trang tin tức từ Internet. Phân tích để thu được thông tin về cá
nhân trong tổ chức hoặc công ty. Hiển thị thông tin về người (tên, nghề nghiệp, tên công ty, khả năng...)
Percepts: địa chỉ trang tin tức
Data access: Interactions:
Chức năng SaveRetrievedlnformation
Trần T h ị M ai Thirơngy K 11T1 92 L u ậ n văn th ạ c s ĩ
Name: SaveRetrievelnformation
Description: lưu trữ thông tin thu được vào file text, SQL server, Access hoặc
Oracle.
Actions: tạo ra file text hoặc kết nổi tới cơ sở dữ liệu. Lưu thông tin thu được
vào cơ sở dữ liệu hoặc file te x t
Percepts: thông tin sau khi xử lý
Data access: File text, SQL serverDB
Interactions: Chức năng InputData
Name: InputData
Description: cho phép người dùng nhập vào từ khóa, địa chỉ URL trang chủ,
hoặc một file chứa các URL của các trang chủ
Actions: Hiển thị giao diện nhập liệu, cung câp các tùy chọn cho quá trình thiết lập •
Percepts: người dùng truy cập trang web và nhập từ khóa, địa chỉ URL hoặc file chứa các URL vào form
Data access:
Interactions:
Chức năng DisplayRetrievedlnformation Name: DisplayRetrievedlnformation
D escription: hiền thị cho người dùng các thông tin thu được trên form
Actions: Hiển thị các thông tin thu được bao gồm: thông tin về cá nhân từ các
trang tiểu sử,từ các trang tin tức; thông tin về công ty; các URL gốc thu đựợc từ chức năng tìm kiếm trang chủ.
Percepts: thông tin kết quả thu được từ việc phân tích trang web,
Data access: SQLServerDB,RetrievedlnformationDB, CompanyDB,
PersonDB, PostalCodeDB Interactions: Parse module
Chức năng DisplayAnalyticInformation
Name: DisplayAnalyticlnformation
Description: phân tích thông tin thu được và hiển thị thông tin phân tích cho
người dùng
Actions: Hiển thị các thông tin phân tích bao ẹồm: các RootURL hiện đang được xử lí ,sô lượng người từ các trang web tiêu sử của mỗi RootURL đang xử lí, số lượng công ty trong RootƯRL đó, số lượng ảnh của cá nhân của RootURL hiện tại, số lượng logo của mỗi RootURL hiện tại; tổng số người thu thập được thông tin từ trang tiểu sử và trang tin tức; tổng số công ty thu được; thổng số logo thu được; tổng các RootURL được xử lí; tổng các Root URL đang chờ xử lí; tốc độ xử lí số người trên một giờ (ngày), tổng số công ty trên một giờ(ngày) Percepts: thông tin kết quả thu được từ việc phân tích trang web
Data access: SQLServerDB, RetrievedlnformationDB, CompanyDB,
PersonDB, PostalCodeDB Interactions: Parse module Chức năng GenerateReport
Name: GenerateReport
Description: tạo ra báo cáo tổng hợp của phiên làm việc
Actions:
Percepts: thông tin kết quả thu được từ việc phân tích trang web Data access: tạo ra file có định dạng
f \ f
Session time: thời gian băt đâu và kêt thúc Tổng số người thu được từ trang tiểu sử Tổng số người'thu được từ trang tin tức Tổng số ảnh về những người thu được Tổng số logo thu được
Tổng số công ty thu được Total processed RootURLs
Total w aiting fo r processing RootURLs
Tốc độ xử lí: Số người/h (ngày), số công ty/h(ngày) Interactions: Parse module
c ) K ị c h b ả n u s e c a s e v à m ô t ả k ị c h b ả n
Sơ đồ Scenario của hệ thống
〉 Save configuration inform ation s c e n a rio〉 〉 Parse web pages to find Inform ation s c e n a rio〉
, 醫 f p f : 身
X 、 〉 Analyze inform ation s c e n a r io〉
〉 Initialize setting s c e n a r io〉 ---乙---7
> Search fo r RootURLs sccnailo > \ 产 r r . ;—'\
z______________ z _______________/ > Create o u tput database scénario >
Các kịch bản use case của hệ thống Scenario: SearchRootURLs
Overview: Dựa vào từ khóa hoặc địa chỉ URL do người dùng nhập vào, lấy ra
các U R L dựa trên sự hỗ trợ của hai search engine là Google Search va Dmoz. Xác định độ ưu tiên của các URL này cho vào hàng đợi lưu trong RAM . Việc xác định độ ưu tiên và thông tin về địa chỉ phụ thuộc vào các từ khóa như: address, company Infor trong title, description của trang web đó.
Context: giả sử là url đó tồn tại trên Internet
Steps:
1. EVENT SearchRootƯRL (-> tương tác trực tuyến) 2. Gửi truy vấn đến các search engines
3. Lấy các url từ các web search engines
4. Phan tích URL để lấy về RootƯRL
5. Kiểm tra RootURL đã tồn tại trong danh sách hay chưa? 6. Nếu chưa tồn tại URL trong danh sách
7. ACTION lấy RootURL đó và cho vào hàng đợi
Trần T h ị M ai Thirơng,K 11T1 94 L u ậ n văn th ạ c s ĩ
Scenario: ParseWebPages
O verview : Lấy ra các RootURL từ hàng đợi và tạo ra danh sách các URL tương ứng với RootƯRL đó. V ới mồi URL trong danh sách, truy cập vào trang web và lấy về nội dung website. Sau đó chuyển các nội dung này vào một hàng đợi là Parse queue. Tiếp theo, lấy dữ liệu ở dạng H TM L trong hàng đợi này ra để phân loại và phân tích. URL lấy được trong quá trình phân tích sẽ được gửi trở lại U R L queue tương ứng, còn kết quả phân tích sẽ được hiển thị và lưu vào database
C ontext: giả sử url tồn tại và cho phép truy cập nội dung. Steps:
1. EVENT ParseWebPages (•> tương tác trực tuyến) 2. Lấy ra RootURL từ hang đợi
3. ACTION tạo ra các URL ứng với RootURL đó và chèn vào hàng đợi 4. Lấy URL từ hàng đợi ra và kiểm tra sự tồn tại của nó
5. Lấy nội dung H TM L của trang web có url đó 6. Phân loại trang web và phân tích
7. ACTION Lấy ra các URL có trong trang web chèn vào hàng đợi tương
ứng ,
8. ACTION Lẩy ra thông tin thu được trong quá trình phân tích và hiển thị
cho người dùng, đồng thời chèn kết quả thu được vào cơ sờ dữ liệu
Scenario: AnalyzeRetrievedlnformation
Overview: Lấy thông tin từ bộ phân tích và máy tìm kiếm để phân tích vá tỉm ra
các thông tin cụ thể về địa chỉ công ty, email, fax…
C ontext: Hàng đợi của bộ phân tích và kết quả trả về của máy tìm kiếm không rồng.
Steps:
1. EVENT AnalyzeRetrievedlnformation (-> tương tác trực tuyến) 2. Nhận thông tin từ bộ phân tích Parser và từ máy tìm kiếm
3. Phân tích thông tin
4. ACTION gửi thông tin phân tích ra form
5. ACTION tạo ra file báo cáo tổng hợp và chèn kết quả vào database
Scenario: CreateOutputDB
Overview: cho phép người dùng sau khi cỏ kết quả tìm kiếm lưu thông tin vào
file hoặc cơ sờ dữ liệu
Context: Kết quả trả về từ bước phân tích thông tin thu được là không rỗng
Steps:
1. EVENT CreateOutputDB(-> tương tác trực tuyến) 2. Tạo ra file kết quả
3. Kết nối với cơ sở dữ liệu
4 . ACTION chèn dữ liệu vào cơ sở dữ liệu nếu đã tồn tại hoặc nếu chưa thì tạo ra cơ sở dữ liệu sau đó chèn vào
5. ACTION Ghi dừ liệu ra file kết quả
Trần Thị Mai Thirơng,K11T1 96 Luân văn thạc sĩ
Sơ đồ tổng quan về mục tiêu của hệ thống
d) Tổ chức dữ liệu
Các file lưu thông tin về postal code được tổ chức trong các file text,tham khảo các file này trong phân phụ lục
4.3.8. Thiết kế
a) Thiết kế kiến trúc
Sơ đồ tổng quan kiến trúc hệ thống
Onlne 敝 tion
ữeieR ootlP isQ ueue
(R*^URLsfrOTW*$^> (^P^URLtogetRo^)
(^forRo^T)
Push ổatâhto output database
(^^RootURlhto
pages to f h d i n f a ^ ^ )
G«®at35ource
hfofmèbontosatjfefef^)
Send H ÎHLfcrm atd data to parser
b) Thiết kế chi tiết
Sơ đồ ghép nối dữ liệu (data grouping)
ProcessWebSite ProcessHomePage Seal chHomePages GetDataSource ProcessWebSite Getlmages ProcessHomePage SeadiHomePages Downloacfl^lanager Onlin« interaction
InformationAnalysis User Assistant
SaveRetrievedlnformation PostalCodeDB^
Cài đặt thử nghiệm
CompanyResultDB
Trần Thị Mai Thương, K llT l 98 Luận văn thạc sĩ
Dựa trên mô tả chức năng và kịch bản use case của toàn bộ hệ thống,phần này của
luận văn sẽ phân tích các chức năng đó và gán cho các agent. Cụ thể ở đây hệ
thống chứa 4 agent để thực hiện toàn bộ chức năng chính của hệ thống, như được trình bày bên dưới:
SouceRetrteval
Sơ đồ tổng quan về toàn bộ hệ thống
Send HTML formated data to parser
CieâteRí
Prxessing infonnation protocol〉〈 sffldngParsed re a ầ protocol〉
Search ResJtpr(
Trần T h ị M a i T hư ơng,K 11T1 100 L u ậ n văn th ạ c s ĩ
CheckPa 丨.sedResult
G etH ĨM LS ource
Send retrie ve d 丨nfomì.ĩíi:ic»n to manager •>
’一一•〜等
Pi c»ces$Ini3geEvents
h X W ;E
Sơ đồ khả năng của agent SourceRetrieval
> n d HTML foi mated dat?i to parcer >
Sơ đồ khả năng của agent DownloadManager
- > - e t o f« n d O I Í O ! :
Trảm T h ị M ai T hư ơng,K Ỉ1 T 1 102 L u ậ n văn th ạ c s ỉ
4.3.9, Cài đặt_
Các ràng buộc về hệ thống, bao gồm:
- Độ chính xác của thuật toán phân tích cần phải >80%
- Platform: Windows 2000/XP/2003 '■.. ;:; . •
- Hệ thống này làm việc tốt trên hầu hết các máy Windows PCs và các máy
chủ
- Sử dụng bộ nhớ: luôn luôn < 256 MB
- Sử dụng CPU: cần dưới mửc 50%
- Thời gian xử lý một trang web: < o.ls
Tronig phần cài đặt, luận văn sử dụng kiến trúc BDI của Rao và GeoreffỊ10] cho việc đặc tả và thiết kế kiến trúc bên trong của các agent. Công cụ PDT được sử dụng cho mô hỉnh hỏa các chế tác trong quá trình đặc tả,thiết kế và kiểm tra chéo để plhát triển hệ thống thực nghiệm.
Hệ tỉhống trích chọn thông tin trên web được xây dựng bằng ngôn ngữ Visual C#
vớí cơ sở dữ liệu được sử dụng là SQL Server,MySQL, Access và file text. Trong
đó cố tận dụng sự hỗ trợ của hai máy tìm kiếm là Google Search và Dmoz Search để laçy về địa chỉ url của từ khóa do người dùng nhập vào.
Dữ liiệu thử nghiệm là file text chứa trên 1000 URL của 10 nước bao gồm: United
States, United Kingdom, Austria, Denmark, Finland, Greece,Hungary, Iceland,
Newzealand,Portugal. Cụ thê, trong danh sách đó chứa 156 url của United States,
74 uirl của United Kingdom, 94 url của Denmark, 196 url của Iceland, 104 của Finlaind,58 url của Austria,97 url của Newzealand, 129 url của Greece,87 url của
.
Hungary, 105 urỉ của Portugal.
Một ísố giao diện kết quả
T r i c h c h o n t h o n g t ỉ n t r c n W e b B t e l o o í ü e l p OnwcAdlW: T h í e d đ l T l e e V i e w I T h t e ^ j I n f o r m a t i o n T h r e a d M â n a g i • Đ圓 SWnMode P « s o m [ C o ^ r M e î ;
Logo Name Addtest P h o n e F a x E m a ỉ Z i p C o d e
S t e I p o l ü r i p O ĩ h r r c a d U 爻:
了NeadllniofrMiion Thread M a n ^ r DitMtoiỵ
thteiadlriíormaúo»'
Maine»: Thieôd 0
Giao diện chung của toàn hệ thống
CunemlNode: T o t a l I U R L P ữ i ĩ t ớ staivm: C u f i e m l U R L p7//wdco< htmJ c t .\ 9 h p . c o m / c o u n ỉ i y / u l ơ o n / c o n t « c ư o í f i c « _ l o 丄 [_Pe«oro I í L o g o N a m e SkínMode A , ộ ứ t n 8 8 W o o d S b e « ( L o n d o n 上 N / A È C 2 V 7 Q T U n i t e d K in g d o m ( I r a n P a rs e r W iio r d P h o o « 少4座7 0 . 013^7» t4Ậ-ặ7; 9 4 9 Ỉ Ỗ Ù 0 . . . . ••浐, Fax I m i ZipCo 6 0 0 ^ 6 0 9 W Â 3 " F io m F t e j F » o m U R L 丨 S o uc« U R L - I h t t p : c o í m o s n ì . c o m / p d g e $ y c o m p a n y / c o n t « c ^ . h lm l Pafjei Option
o Par»f BI0 0 p * » r Company o New*
t l抽 《ỊPtỉù(知: {Normal vi
二 一 , 厂 一^ y
L Æ U
P r o g r e » : | _ _ 供_鵠 1 0 0 : 0 0 : 0 8
Giao diện nhập U R L cho quá trìn h phân tích địa chỉ công ty
TrầìP Thị M ai T hư ơ ng, K 11T1 104 L u ậ n văn th ạ c s ĩ
ĩr ỉ c h c h o r thong lín tre o Web
9e Ipocí tí* •(^^ThreaơdL w : Thread 0 Thí«ôdW.
Ir»wd
lcormaỉon ThMdMan«0Cf Drectcxy
Irriandhcrt Thr^dO Nôme: CuttâfiN< o< k: ToidURtlP^wd S ta tu t CureniUFRL
Krtp. /y<m eầcooề.họ c o m /c o u n try /ià /e n /c o n ia c i/o tíic a .io
c th tm l
P io g re tỉ: QĨT“
1^讀 V d i lễ S '
10 00:02:06
::..V:. 怂 .
Giiao diện sau kh i phân tích hoàn thành với thông tin về luồng điều khiển
Trich cfchon thong tin Iren Web
Fte Tool ! 狄
CýThreadUist: Thread 0
Thread Irtowtnaifon ThiwdMànagcf Diectory
DieclOiyy U n rà e d S íđ lẽ t
Unried K.ngdcm
Deiete Thread I Stop II Pause ► Resume SilinMode
Ptítort íottọvm 1 lo g ữ N«ne Corp. SdiiMvkt Corpadüon 3 0 0 0 0 cc«ì 8oulev«d Siite200i Mớe$s p«k Santo Monica CA 90405* 3030 United States ^rid^e s_ CambiidQe.N/A
UntodMnỏdomI/ACS5 8 AB Phone 310-309-2800 ♦44Ạ 1223- 346900 Fax 3ia 303-280l ♦4 4 4 1 2 2 3 - 34S9Ữ1 n fo@ «dc.com pohaf«@tofc^wl«,co(n C8 5 P ro g rè s :卜 ― 抑“ 二 二 ^ 0 0 : 0 3 :1 2
Giao diện sau phân tích hoàn thành với cấu trúc cây phân loại theo từng nước
^• ầí :. . : : ■•: • & ậ Cài đặt th ử nghiệm m g M
< O u t p u t > < C o m p a n y > < i t e m > < C o m p a n y N a m e > V a l u e < / C o m p a n y N a m e > < O f f i c e N a m e > V a l u e < / O f f i c e N a m e > < A d d r e s s > V a l u e < / A d d r e s s > > 'A" V* •' • lí •' < P h o n e > V a l u e < / P h o n e > < F a x > V a l u e < / F a x > < E m a i l > V a l u e < / E m a i l > < Ü R L > V a l u e < / Ü R L > < R o o t ü R L > V a l u e < / R o o t U R L > < L a n g u a g e > V a l u e < / L a n g u a g e > < A c c u r a c y > V a l u e < / A c c u r a c y > < P o s t a l C o d e > V a l u e < / P o s t a l C o d e > < P o s t a l C o d e I D > V a l u e < / P o s t a l C o d e I D > < C i t y > V a l u e < / C i t y > < C o m m u n e > V a l u e < / C o m m u n e > < D i s t r i c t > V a l u e < / D i s t r i c t > < P r o v i n c e > V a l u e < / P r o v i n c e > < P r o v i n c e S h o r t > V a l u e < ? P r o v i n c e S h o r t > < S t a t e > V a l u e < / S t a t e > • < S t a t e S h o r t > V a l u e < / S t a t e S h o r t > < C o u n t y > V a l u e < / C o u n t y> < C o u n t y S h o r t > V a l u e < / C o u n t y S h o r t > < C o u n t r y > V a l u e < / C o u n t r y > < K e y w o r d s > V a l u e < / K e y w o r d s > < / C o m p a n y > < P e r s o n F r o m B i o > < i t e m > < N a m e > < / N a m e > < J o b T i t l e > < / J o b T i t l e > < B i o g r a p h y X / B i o g r a p h y > < Ü R L > < / Ü R L > < R o o t U R L X / R o o t ü R L > < L a n g u a g e > < / L a n g u a g e >