John Howard
John Howard

Reputation: 64225

Python HTML parsing

I am currently trying to make a program that given a word will look up its definition and return it. Although I have gotten this to work, I had to resort to using RegEx to search for the text between the tags where the definitions are stored. What is a more efficient way to do this using python 3.x?

Upvotes: 0

Views: 1135

Answers (3)

Lennart Regebro
Lennart Regebro

Reputation: 172359

lxml works for Python 3. It has an ElementTree compatible API, but is using c libraries behind the scenes, so it's fast, and it supports Xpaths, which is a nice way of parsing (sometimes).

Upvotes: 5

Senthil Kumaran
Senthil Kumaran

Reputation: 56941

Your's a pretty simple requirement when it comes to HTML parsing. Python standard library includes ElementTree module which should be helpful to do the task which you are planning to undertake. Look for the example snippet which is given in that page.

Also, never make the mistake of parsing HTML/XML using regex. You may not know when it will get insanely complicated and it is a bad idea under any situation too.

Upvotes: 2

ocodo
ocodo

Reputation: 30309

Try BeautifulSoup a good HTML parser for Python. (works with Python 3.x too, although unless you are deep into a Python 3.0 project, consider using 2.7)

Upvotes: 4

Related Questions