如何使用BeautifulSoup删除表格单元格中的额外内容

时间:2016-03-22 01:04:32

标签: python string beautifulsoup

我正在抓第二列中有额外信息的双列表。

state    | count  | pct
Florida  | 1 (1)  | 0.5
Colorado | 10 (<1)| 1.0

当我运行我的脚本时,我通常得到一个变体:

1 \xa0\xa0\xa0\xa0\xa0(<1)

10 \xa0\xa0\xa0\xa0\xa0(10)

为第二个细胞。

我只对第一个数字感兴趣,所以BeautifulSoup中的输出如下:

 [[u'Florida', u'1'], [u'Colorado', u'10']]

这样的事情可能吗?

1 个答案:

答案 0 :(得分:1)

假设你有rows

>>> rows = [
...     [u'Florida', u'1 \xa0\xa0\xa0\xa0\xa0(1)'],
...     [u'Colorado', u'10 \xa0\xa0\xa0\xa0\xa0(<1)']
... ]

拆分count并获取第一部分:

>>> rows = [[state, count.split()[0]] for state, count in rows]
>>> rows
[[u'Florida', u'1'], [u'Colorado', u'10']]