Python解析'title'的网页

ad2*_*387 1 python regex parsing module

我希望能够解析一个网页并返回任何标题包含4个字母的元素.

例如:

<li><a href="test.com/dogs" title="dogs"></a></li>
<li><a href="test.com/cat" title="cat"></a></li>
<li><a href="test.com/horse" title="horse"></a></li>
<li><a href="test.com/eels" title="eels"></a></li>
Run Code Online (Sandbox Code Playgroud)

在这个例子中,我想返回一个包含'dogs'和'eels'的数组,因为标题恰好包含4个字符.我该怎么做呢?谢谢!

jac*_*ill 5

你应该使用BeautifulSoup.

使用它,你可以这样做:

import urllib2
from BeautifulSoup import BeautifulSoup

url = # put url here
page = urllib2.urlopen(url)
text = page.read()
page.close()
soup = BeautifulSoup(text)

L = []
for x in soup.findAll('li'):
    link = x.a
    if link.has_key('title'):
        if len(link['title']) == 4:
            L.append(link['title'])
print L
Run Code Online (Sandbox Code Playgroud)