【问题标题】:Python // BS4 // TagsPython // BS4 // 标签
【发布时间】:2015-06-30 09:31:58
【问题描述】:

如果有以下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

【问题讨论】:

    标签: python tags bs4


    【解决方案1】:

    我认为你可以使用:

    [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 中)确实是唯一有意义的东西。

    【讨论】:

    • 工作正常。你说的对。数组是要走的路,也只是由于计算的原因。但是,我确实将“单元格”从数组中拉出,以便将其写入 excel。再次感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多