0

如果有以下html:

</br></td>, <td class="first">TEXT_1a<br>TEXT_1b
                            </br></td>, <td class="first">TEXT_2a<br>TEXT_2b
                            </br></td>, <td class="first">TEXT_3a<br>TEXT_3b
                            </br></td>, <td class="first">TEXT_4a<br>TEXT_4b
                            </br></td>, <td class="first">TEXT_5a<br>TEXT_5b
                            </br></td>, <td class="first">TEXT_6a<br>TEXT_6b

我用了

[i.text.strip() for i in soup.select('td.first')]

但是,然后我得到了

   ['TEXT_1aTEXT_1b', 'TEXT_2aTEXT_2b', 'TEXT_3aTEXT_3b', 'TEXT_4aTEXT_4b', 'TEXT_5aTEXT_5b', 'TEXT_6aTEXT_6b']

如何删除 TEXT_1b、TEXT_2b...TEXT_nb。另外我不想有一个数组,但 N1 = TEXT_1a, N2 = TEXT_2a...Nn = TEXT_na

4

1 回答 1

0

我认为你可以使用:

[i.contents[0].strip() for i in soup.select('td.first')]

关于你问题的第二部分 - 你想拥有单个变量中的字段吗?你可以做到,但这可能不是一个好主意。有什么原因吗?

要么,您知道其中有多少,在这种情况下,您可以执行以下操作:

n1, n2, n3, ...nN = [i.contents[0].strip() for i in soup.select('td.first')]

或者你不这样做,在这种情况下,数组(列表,在 python 中)确实是唯一有意义的东西。

于 2015-06-30T09:38:55.360 回答