Во-первых, настоящий проект программирования: создание базы данных из веб-словаря - PullRequest
0 голосов
/ 11 декабря 2010

Я хочу создать программу, которая будет принимать список слов, выполнять поиск в веб-словаре (например, в словаре обучения Webster, Cambridge Learner's ...) и создавать текстовый файл в следующей форме:

word1 pronunciation definition example sentence ... ...
word2 pronunciation definition example sentence ... ...
....

и у меня есть несколько вопросов:

возможно ли это сделать?
если это какие инструменты я должен использовать?
Если это возможно с python, то какой lib. я должен использовать?
(Я предпочитаю Python, потому что это язык, который я изучаю)

Мне просто нужно общее представление о том, как взять.

Я все еще большой любитель программирования, но я думаю, что если я работаю над каким-то личным проектом, Я сделаю хороший прогресс.

П.С .: Мой английский далеко не идеален, извините за это.

Ответы [ 2 ]

3 голосов
/ 11 декабря 2010

Это не будет так сложно, главное будет выяснить, как сделать запрос на сайте.Это были бы основные шаги:

  • сопоставить строку запроса с URL:
    • Вам необходимо выяснить, как работает веб-сайт (Изучите исходный код HTML для определения параметров форм.) Некоторые веб-сайты имеют общедоступные API-интерфейсы, которые облегчают процесс.
  • получить веб-страницу: urllib2
  • парсинг страницы для вашего ответа: BeautifulSoup.Отделите вашу информацию от остальной части веб-страницы.
  • запишите информацию в файл
0 голосов
/ 11 декабря 2010

Это возможно, но для поддержания масштабируемости вам понадобится алгоритм Rigth: http://en.wikipedia.org/wiki/Aho%E2%80%93Corasick_string_matching_algorithm

В Python это: http://pypi.python.org/pypi/ahocorasick/0.9

Просто запишите событие, где поискДерево достигает состояния, в котором обнаруживается поисковое слово и воздействует на него.Вышеупомянутая вики-страница указывает на некоторые полезные ресурсы.

Greetz, J.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...