【发布时间】:2015-05-19 02:17:34
【问题描述】:
我正在使用 BeautifulSoup 抓取表格及其内容,我注意到根据我结束它的方式我得到不同的输出 - 如果我直接打印它,我得到一个没有 unicode 表示法的输出。
html = urlopen('http://www.bcsfootball.org').read()
soup = BeautifulSoup(html)
for row in soup('table', {'class':'mod-data'})[0].tbody('tr'):
tds = row('td')
print tds[0].string, tds[1].string
给予:
1 Florida State
2 Auburn
3 Alabama
4 Michigan State
5 Stanford
等等(顺便说一句,有没有像 .head() 或 index 这样的简单方法来限制行输出的数量?)
但是当我将最后一行放在括号中时,
print (tds[0].string, tds[1].string)
或者给行赋值一个变量然后打印变量,
output = tds[0].string, tds[1].string
print output
我得到了 unicode 的输出:
(u'1', u'Florida State')
(u'2', u'Auburn')
(u'3', u'Alabama')
(u'4', u'Michigan State')
(u'5', u'Stanford')
这里发生了什么?提前致谢。
【问题讨论】:
标签: python unicode beautifulsoup