Return to Video

01-02 Web Crawler

  • 0:00 - 0:02
    建立搜尋引擎 (search engine) ,你有什麼收穫呢?
  • 0:02 - 0:03
    你曾建立一個,對嗎?
  • 0:03 - 0:06
    是的,如果你想要建立一個搜尋引擎
  • 0:06 - 0:08
    我認為最重要的事
  • 0:08 - 0:12
    是從一個非常好的語料庫 (corpus) 開始
  • 0:12 - 0:19
    我們以前使用 WWW,它比今天的 WWW 小多了
  • 0:19 - 0:21
    但是它仍很新奇、令人興奮的
  • 0:21 - 0:23
    有各種出乎意料的事情
  • 0:23 - 0:26
    因此課程前三單元的目標,是建立語料庫
  • 0:27 - 0:30
    藉由爬行網頁來為我們的搜尋引擎建立語料庫
  • 0:30 - 0:32
    爬行網頁是網頁蜘蛛 (web crawler) 的工作
  • 0:32 - 0:36
    網頁蜘蛛是一個從網路收集內容的程式
  • 0:36 - 0:40
    想像一個你在瀏覽器看到的網頁,一個這樣的網頁
  • 0:40 - 0:43
    我們將使用 udacity 的網站做為網頁的例子
  • 0:43 - 0:47
    它有很多內容,有一些圖像,有一些文字
  • 0:47 - 0:51
    當您請求這個網頁時,
    所有的內容都來到你的瀏覽器 (browser)
  • 0:51 - 0:53
    重要的是,網頁含有連結 (link)
  • 0:53 - 0:57
    連結 (link) 是什麼? link 通往另一個網頁
  • 0:57 - 1:00
    有一個通往「常見問題」的 link
  • 1:00 - 1:02
    有一個通往 CS101 網頁的 link
  • 1:02 - 1:04
    還有其他一些 link
  • 1:04 - 1:07
    link 在瀏覽器中顯示的時候,可能帶有底線
  • 1:07 - 1:09
    也可能沒有,取決於瀏覽器的設定
  • 1:09 - 1:11
    重要的是
  • 1:11 - 1:13
    link 是通往其他網頁的指引
  • 1:13 - 1:16
    而其他網頁也可能含有 link
  • 1:16 - 1:19
    這個網頁上有另一個 link
  • 1:19 - 1:23
    也許它通往我的名字,你可以跟隨它通往我的首頁 (homepage)
  • 1:23 - 1:26
    網頁蜘蛛能找到的所有網頁
  • 1:26 - 1:29
    都是跟隨 link 而找到的
  • 1:29 - 1:31
    沒有必要找出網路中的每個網頁
  • 1:31 - 1:33
    如果我們從一個好的種子網頁 (seed page) 開始
  • 1:33 - 1:35
    就可以找到很多網頁
  • 1:35 - 1:37
    網頁蜘蛛要做的,就是從一個網頁開始
  • 1:37 - 1:41
    找出網頁中所有的 link,跟隨它們,找到其他的網頁
  • 1:41 - 1:45
    然後在這些網頁裡,繼續跟隨網頁中的 link
  • 1:45 - 1:48
    以找到其他網頁,那些網頁中有更多的 link
  • 1:48 - 1:51
    最後,我們收集到網路中很多的網頁
  • 1:51 - 1:54
    這就是我們要網頁蜘蛛做的事
  • 1:54 - 1:56
    我們希望找到方法,從一個 seed page 開始
  • 1:56 - 1:59
    擷取網頁上的 link
  • 1:59 - 2:01
    跟隨這些 link 找到其他的網頁
  • 2:01 - 2:03
    然後收集那些網頁中的 link
  • 2:03 - 2:05
    跟隨它們,收集所有的 link
  • 2:05 - 2:07
    好像有很多事要做
  • 2:07 - 2:09
    第一節課不會完成所有的事情
  • 2:09 - 2:12
    第一單元要做的,只是擷取一個 link
  • 2:12 - 2:14
    我們將從一堆文字開始
  • 2:14 - 2:17
    其中帶有 URL 的 link
  • 2:17 - 2:19
    我們要找出那個 URL
  • 2:19 - 2:21
    這樣才能請求下一個網頁
  • 2:21 - 2:23
    第二單元的目標是
  • 2:23 - 2:25
    能夠持續地做下去
  • 2:25 - 2:28
    如果網頁中有很多 link,你要把它們全找出來
  • 2:28 - 2:30
    第二單元要做的
  • 2:30 - 2:32
    是要弄清楚如何持續的擷取所有的 link
  • 2:32 - 2:36
    第三單元,嗯,我們將超越一個網頁
  • 2:36 - 2:40
    第二單元結束時,我們能夠印出一個網頁中的所有 link
  • 2:40 - 2:44
    第三單元我們要收集所有的 link,才可以持續下去
  • 2:44 - 2:47
    直到網頁蜘蛛收集了很多、很多的網頁
  • 2:47 - 2:50
    第三單元結束時,我們將建立一個網頁蜘蛛
  • 2:50 - 2:52
    我們有一個建立語料庫的方法
  • 2:52 - 2:57
    剩下三個單元重點在於,如何回應查詢 (queries)
  • 2:57 - 3:01
    第四單元我們將探討,如何給出好的回應
  • 3:01 - 3:08
    當搜索一個關鍵字 (keyword) 時,
    我們要給出一個網頁列表 (list) 當作回應
  • 3:08 - 3:10
    列表中的網頁都出現了關鍵字
  • 3:10 - 3:15
    第五單元我們將思考,
    如果有一個很大的語料庫,如何擴展規模
  • 3:15 - 3:19
    第六單元要做的,不只是找出一個網頁列表
  • 3:19 - 3:21
    而是要找出最佳的網頁
  • 3:21 - 3:24
    我們將探討,如何為含有關鍵字的網頁來評分
  • 3:24 - 3:27
    我們已經講得有點遠了
  • 3:27 - 3:30
    因為第一單元要做的只是
  • 3:30 - 3:32
    思考如何從網頁中擷取一個 link
  • 3:32 - 3:35
    課程結束時,我們所建立的搜尋引擎
  • 3:35 - 3:37
    將是一個功能完整的搜尋引擎
  • 3:37 - 3:40
    它將擁有像 Google 這種搜尋引擎所具備的主要元件
  • 3:40 - 3:43
    它當然不會像 Google 那麼強大
  • 3:43 - 3:44
    我們想要簡單一點
  • 3:44 - 3:46
    我們只要寫少量的程式
  • 3:46 - 3:48
    要記住我們的目標
  • 3:48 - 3:50
    重點不是建立一個搜尋引擎
  • 3:50 - 3:52
    而是將建立搜尋引擎當作一個手段
  • 3:52 - 3:55
    來學習電腦科學
  • 3:55 - 3:56
    以及學習程式設計
  • 3:56 - 3:58
    透過這樣的學習
  • 3:58 -
    將讓我們有能力解決很多、很多其他的問題
Title:
01-02 Web Crawler
Description:

Professor David Evans gives an overview of the unit in CS 101.

more » « less
Video Language:
English
Duration:
04:03
淑玲 蔡 edited Chinese, Traditional subtitles for 01-02 Web Crawler
淑玲 蔡 edited Chinese, Traditional subtitles for 01-02 Web Crawler
淑玲 蔡 edited Chinese, Traditional subtitles for 01-02 Web Crawler
淑玲 蔡 added a translation

Chinese, Traditional subtitles

Revisions