私は、このリンクから「スパン」タグに番号を取得しようとしている:取得番号
<tr><td>Modu</td><td><span class="comments">90</span></td></tr>
<tr><td>Kenzie</td><td><span class="comments">88</span></td></tr>
<tr><td>Hubert</td><td><span class="comments">87</span></td></tr>
ここでコードがあります:http://python-data.dr-chuck.net/comments_42.html
データは次のようになります
import urllib
from BeautifulSoup import *
url = raw_input('Enter - ')
html = urllib.urlopen(url).read()
soup = BeautifulSoup(html)
# Retrieve all of the anchor tags
tags = soup('span')
numbers = [number.contents[0] for number in tags]
print numbers
私はnumbers
を印刷するとき、それはこのようなものが表示されます。
[u'97', u'97', u'90', u'90', u'88', u'87', u'87', u'80', u'79', u'79', u'78', u'76', u'76', u'72', u'72', u'66', u'66', u'65', u'65', u'64', u'61', u'61', u'59', u'58', u'57', u'57', u'54', u'51', u'49', u'47', u'40', u'38', u'37', u'36', u'36', u'32', u'25', u'24', u'22', u'21', u'19', u'18', u'18', u'14', u'12', u'12', u'9', u'7', u'3', u'2']
どうしてそんなものが得られますか?私の目的は、それらの文字列をuを使わずにキャストし、それらの合計を得ることです。
あなたはエンコードの種類を通らずにユニコード( 'STRを()')をエンコードすることはありません。いずれかのフィールドにASCII以外の文字が含まれていると、大量のUnicodeEncodeError例外が発生します –
@AlastairMcCormack私はあなたに同意します。この場合、入力は非ASCII文字以外の数字です。 – ettanany