1 00:00:00,000 --> 00:00:02,018 [Себастьян Тран] Как ты думаешь, как написать поисковую машину 2 00:00:02,018 --> 00:00:03,077 ты ведь создал уже одну раньше, так ведь? 3 00:00:03,077 --> 00:00:06,008 [Сергей Брин, сооснователь Google] Да, я думаю, что самая важная вещь, 4 00:00:06,008 --> 00:00:08,013 если ты собираешся создать поисковую машину, 5 00:00:08,013 --> 00:00:12,051 это иметь хорошую базу с которой начнёшь 6 00:00:12,051 --> 00:00:19,020 В нашем случае мы использовали всемирную паутину, которая в то время была, конечно, меньше, чем сегодня 7 00:00:19,020 --> 00:00:21,036 Но она была также новой и захватывающей 8 00:00:21,036 --> 00:00:23,081 Были всякие неожиданные вещи. 9 00:00:23,081 --> 00:00:26,099 [David Evans] Итак, цель наших трех первых разделов курса в создании этой базы 10 00:00:27,003 --> 00:00:30,009 И мы собираемся создать базу для нашего поисковой машины 11 00:00:30,009 --> 00:00:32,090 сканируя сеть, это то, что делает сетевой "паук". 12 00:00:32,090 --> 00:00:36,038 Сетевой паук - это программа, которая собирает содержание сети. 13 00:00:36,038 --> 00:00:40,054 Если представить веб-страницу которую ты видишь в браузере, у тебя есть страница наподобие этой. 14 00:00:40,054 --> 00:00:43,099 Рассмотрим сайт udacity как пример веб-страницы 15 00:00:43,099 --> 00:00:47,097 На ней много информации, в виде картинок, в виде текта 16 00:00:47,097 --> 00:00:51,038 Все это получает твой браузер, когда запрашивает страницу 17 00:00:51,038 --> 00:00:53,066 Важная вещь это ссылки 18 00:00:53,066 --> 00:00:57,093 Ссылка это что-то, что ссылается на другую страницу 19 00:00:57,093 --> 00:01:00,050 Так у нас есть ссылка на часто задаваемые вопросы 20 00:01:00,050 --> 00:01:02,046 есть ссылка на страницу CS101 21 00:01:02,046 --> 00:01:04,043 И ещё несколько остальных ссылок 22 00:01:04,043 --> 00:01:07,054 И эта ссылка может быть показана в браузере с подчёркиванием 23 00:01:07,054 --> 00:01:09,094 или нет, в зависимости от настроек браузера 24 00:01:09,094 --> 00:01:11,095 Но важная вещь это то, 25 00:01:11,095 --> 00:01:13,088 что они указывают на какие-то другие страницы 26 00:01:13,088 --> 00:01:16,043 И эти страницы могут тоже содеражить ссылки 27 00:01:16,043 --> 00:01:19,073 так у нас есть другая ссылка на эту страницу 28 00:01:19,073 --> 00:01:23,052 Может быть с моим именем, ты можешь попасть на мою домашную страницу 29 00:01:23,052 --> 00:01:26,091 И все страницы, которые мы можем найти нашим пауком 30 00:01:26,091 --> 00:01:29,009 находятся по переходу по ссылкам. 31 00:01:29,009 --> 00:01:31,067 Так, что нам не нужно искать каждую страницу в сети 32 00:01:31,067 --> 00:01:33,059 Если мы начнем с хорошей начальной страницы 33 00:01:33,059 --> 00:01:35,003 мы найдем множество страниц. 34 00:01:35,003 --> 00:01:37,050 И всё что паук будет делать, это начинать с одной страницы, 35 00:01:37,050 --> 00:01:41,056 находить на ней все ссылки и переходить по ним, находя другие страницы 36 00:01:41,056 --> 00:01:45,013 и затем на других страницах он перейдет по следующим ссылкам 37 00:01:45,013 --> 00:01:48,031 обнаруживая другие страницы и на этих страницах будет ещё больше ссылок 38 00:01:48,031 --> 00:01:51,043 И в конце концов у нас будет коллекция множества страниц в сети. 39 00:01:51,043 --> 00:01:54,007 Вот что мы хотим делать, создавая веб паука. 40 00:01:54,007 --> 00:01:56,095 Мы собираемся каким-либо образом начать с первоначальной страницы 41 00:01:56,095 --> 00:01:59,056 выделить ссылки на ней, 42 00:01:59,056 --> 00:02:01,078 перейти по этим ссылкам на другие страницы, 43 00:02:01,078 --> 00:02:03,067 затем собрать ссылки с этих других страниц, 44 00:02:03,067 --> 00:02:05,024 переходя по ним, собирая всё содеражние 45 00:02:05,024 --> 00:02:07,038 Похоже чтобы реализовать это, нужно много работы 46 00:02:07,038 --> 00:02:09,014 Мы не собираемся делать это всё в первом разделе 47 00:02:09,014 --> 00:02:12,072 Всё что мы собираемся сделать в первом разделе, просто выделить ссылку. 48 00:02:12,072 --> 00:02:14,058 Итак, мы начнем с отрывка текста. 49 00:02:14,058 --> 00:02:17,033 Он будет иметь ссылки с URL. 50 00:02:17,033 --> 00:02:19,064 Всё что мы хотим найти это этот URL, 51 00:02:19,064 --> 00:02:21,089 так чтобы мы могли запросить следующую страницу. 52 00:02:21,089 --> 00:02:23,082 Цель второго раздела 53 00:02:23,082 --> 00:02:25,016 возможность продолжить дальше, 54 00:02:25,016 --> 00:02:28,049 если на странице много ссылок, ты захочешь найти их все. 55 00:02:28,049 --> 00:02:30,014 Это то, чем мы займемся во втором разделе, 56 00:02:30,014 --> 00:02:32,069 выяснить, как продолжить, чтобы выделить все эти ссылки 57 00:02:32,069 --> 00:02:36,061 В третьем разделе, мы хотим выйти за рамки только одной страницы. 58 00:02:36,061 --> 00:02:40,033 Так что к концу раздела 2 мы сможем вывести все ссылки с одной страницы 59 00:02:40,033 --> 00:02:44,002 Для третьего раздела нам нужно собрать всё эти ссылки, так что мы можем продолжить, 60 00:02:44,002 --> 00:02:47,018 чтобы в конечном итоге, наш паук собрал много страниц. 61 00:02:47,018 --> 00:02:50,013 Так что к концу третьего раздела мы доделаем веб паука. 62 00:02:50,013 --> 00:02:52,033 У нас будет возможность сделать базу. 63 00:02:52,033 --> 00:02:57,079 Тогда в оставшихся трёх разделах взглянем на то, как отвечать на запросы. 64 00:02:57,079 --> 00:03:01,034 Таким образом в четвертом разделе подумаем над тем как получить хороший отклик. 65 00:03:01,034 --> 00:03:08,022 Если ты ищешь какое-либо слово, ты хочешь получить в ответ список страниц, 66 00:03:08,022 --> 00:03:10,063 где встречается это слово. 67 00:03:10,063 --> 00:03:15,090 И в 5 разделе мы найдём способ сделать это, если у нас очень большая база. 68 00:03:15,090 --> 00:03:19,083 Затем в шестом разделе, что мы хотим сделать, это не просто найти список страниц, 69 00:03:19,083 --> 00:03:21,069 мы хотим найти наиболее подходящую. 70 00:03:21,069 --> 00:03:24,084 Мы подумаем над тем, как расставить страницы, где это слово встречается. 71 00:03:24,084 --> 00:03:27,068 Но мы сейчас немного забежали вперед, 72 00:03:27,068 --> 00:03:30,035 потому что всё что мы собираемся сделать в первом разделе, 73 00:03:30,035 --> 00:03:32,064 это выяснить как извлечь ссылку со страницы. 74 00:03:32,064 --> 00:03:35,073 И поисковая машина, которую мы создадим в конце 75 00:03:35,073 --> 00:03:37,034 будет вполне действующей поисковой машиной. 76 00:03:37,034 --> 00:03:40,061 Она будет содержать такие же главные компоненты, как и у поисковой машину Google. 77 00:03:40,061 --> 00:03:43,014 Она определенно не будет такой же мощной, как Google, 78 00:03:43,014 --> 00:03:44,029 мы не хотим всё сильно усложнять. 79 00:03:44,029 --> 00:03:46,060 Нам нужно будет написать не так много кода. 80 00:03:46,060 --> 00:03:48,010 Мы хотим напомнить, что наша настоящая цель 81 00:03:48,010 --> 00:03:50,024 не сколько написать поисковую машину, 82 00:03:50,024 --> 00:03:52,078 а сколько воспользоваться необходимостью 83 00:03:52,078 --> 00:03:55,018 написания поисковой машины для того, 84 00:03:55,018 --> 00:03:56,075 чтобы изучить информатику и программирование 85 00:03:56,075 --> 00:03:58,018 так, что вещи, которые мы изучим, делая поисковую машину 86 00:03:58,018 --> 99:59:59,999 позволят нам в дальнейшем решить много других проблем.