Разбор HTML в python3, re, html.parser или что-то еще? - PullRequest
0 голосов
/ 13 февраля 2011

Я пытаюсь получить список состояний Craigslist и URL-адресов их партнеров.Не волнуйтесь, я не собираюсь спамить, если вам интересно, для чего это нужно, см. * Ниже.

То, что я пытаюсь извлечь, начинается с строки после «us States» и следующих 50

.Я прочитал документы html.parser, и это показалось мне слишком низким уровнем, более нацеленным на создание синтаксического анализатора dom или подсветку / форматирование синтаксиса в ide, а не на поиск, что заставляет меня думать, что моя лучшая ставка - использовать re.Я хотел бы держать себя в курсе того, что находится в стандартной библиотеке только ради обучения.Я не прошу помощи в написании регулярного выражения, я сам это выясню, просто убедившись, что нет лучшего способа сделать это, прежде чем тратить на это время.

* Это моеПервая программа или что-то кроме простых сценариев Python.Я делаю программу на С ++ для управления своими сообщениями и напоминания о том, когда они истекли, на случай, если я захочу опубликовать их, и скрипт на python для загрузки списка всех штатов и городов / районов США, чтобы заполнитьвыпадающий список в графическом интерфейсеЯ действительно не нуждаюсь в этом, но я стремлюсь сделать эту «готовую к работе» / особенность завершенной как в качестве учебного упражнения, так и для создания портфолио, чтобы возможно получить работу.Я не знаю, сделаю ли я программу общедоступной или нет, есть очевидный потенциал для неправильного использования и, вероятно, в любом случае против их ToS.

Ответы [ 2 ]

4 голосов
/ 13 февраля 2011

В самой стандартной библиотеке Python есть xml.etree анализатора XML. Вы не должны использовать регулярные выражения для анализа XML. Перейдите в конкретный узел, где вы найдете информацию и извлеките ссылки из этого.

1 голос
/ 13 февраля 2011

Использование lxml.html. Это лучший анализатор Python HTML. Он поддерживает xpath!

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