我经常使用perl但是对于这个特殊的任务,我试图使用python,我没有很多经验。我的问题是使用beautifulsoup解析网站。正在发生的事情是我正在努力创建的清单正在缩短。这是代码
#!/usr/bin/python
from bs4 import BeautifulSoup
import urllib2
url="http://www.dclivemusic.com/venues.php"
page = urllib2.urlopen(url)
soup = BeautifulSoup(page.read())
table = soup.find('table', {'id':'listado'})
for row in table.findAll("tr"):
for cell in row.findAll("td"):
print cell.findAll(text=True)
如果您运行该脚本,您会注意到它会在“角落商店艺术”中删除。这是C命名场地的结尾。如果我正确理解代码,它应该使用id' listado'解析表中的所有内容。我没有看到任何会在html中被截断的内容。非常感谢帮助
答案 0 :(得分:0)
似乎没有为我做这件事。以下是完全相同代码的结果,在Windows 7上的Python 2.7.4中运行。是否有其他条目也被删除?此外,您显然使用其他一些代码来提取数据。也许那段代码犯了错误? (例如,如果你没有使用findAll但是对于范围内的所有人都做了类似的事情,但忽略了最后一项,因为0到范围-1') -
[u'Columbia Station', u'\n\t\t2325 18th St NW ', u'\n', u'Adams Morgan', u', DC 20009 ', u'\n\t\t202.462.6040 \xa0 \xa0 \xa0 \n\t\t', u'map']
[u'DC', u'Adams Morgan', u'20009']
[u'Jazz']
[]
[u'Corner Store Arts', u'\n\t\t 900 South Carolina Ave. SE ', u'\n', u'DC 20003', u'\n\t\t202.544.5807 \xa0 \xa0 \xa0 \n\t\t', u'map']
[u'DC', u'20003']
[u'All']
[u'Schedule']
[u'D']
[]
[]
[]
[]
对此感到抱歉,但我没有足够的代表发表评论,否则会发表评论,而非答案。