使用Python和BeautifulSoup解析HTML,在<a>标记内和标记外获取文本

2024-10-01 15:42:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我有html和一些标记,然后文本是在这些标记之外。我尝试获取的文本位于
标记中,但第一个实例除外,我想这只是标记的一部分。但是如果我试图得到标签的文本(比如td.文本或者类似的)然后它也会给我所有和标记中的所有文本。在

    <td align="left">
     <a class="playerLink" href="http://bbroto.baseball.cbssports.com/players/playerpage/1740935">
      Garcia, Leury
     </a>
     SS CHW - Traded from Royal Disappointments
     <br>
      <a class="playerLink" href="http://bbroto.baseball.cbssports.com/players/playerpage/1813191">
       Almonte, Abraham
      </a>
      OF SEA - Traded from Royal Disappointments
      <br>
       <a class="playerLink" href="http://bbroto.baseball.cbssports.com/players/playerpage/2046044">
        Pillar, Kevin
       </a>
       OF TOR - Traded from Royal Disappointments
       <br>
        <a class="playerLink" href="http://bbroto.baseball.cbssports.com/players/playerpage/1666824">
         Sierra, Moises
        </a>
        LF TOR - Traded from Royal Disappointments
        <br>
         <a class="playerLink" href="http://bbroto.baseball.cbssports.com/players/playerpage/580599">
          Paulino, Felipe
         </a>
         SP KC
         <span title="Felipe Paulino off 60-day DL">
          <a class="playerLink" href="http://bbroto.baseball.cbssports.com/players/playerpage/580599" subtab="Update">
           <img border="0" height="10" src="http://sports.cbsimg.net/images/news-note-recent.gif" width="10"/>
          </a>
         </span>
         - Traded from Royal Disappointments
        </br>
       </br>
      </br>
     </br>
    </td>

基本上,我想要(作为单独的值)a标记中的每个文本,然后是a标记外部的每个文本。所以最终的结果是:

加西亚,鲁利

SS CHW-从皇室失望中交易

阿尔蒙特,亚伯拉罕

从皇室的失望中交易

支柱,凯文

从皇室的失望中交易

谢拉,莫伊斯

从皇室的失望中交易

保利诺,费利佩

标普KC-因皇室失望而被交易

到目前为止,我只有来自a标记的文本的代码:

^{pr2}$

我真的不知道如何处理剩下的事情。在


Tags: from标记文本brcomhttpclasshref
2条回答

psoup上调用get_text怎么样?在

(Pdb) print soup.get_text()


      Garcia, Leury

     SS CHW - Traded from Royal Disappointments


       Almonte, Abraham

      OF SEA - Traded from Royal Disappointments


        Pillar, Kevin

       OF TOR - Traded from Royal Disappointments


         Sierra, Moises

        LF TOR - Traded from Royal Disappointments


          Paulino, Felipe

         SP KC





         - Traded from Royal Disappointments

您可以使用Tag.next属性(别名为Tag.next_element):

for a in psoup('a': {'class': 'playerLink'}):
    print a.text
    print a.next.next

实际上,每个“外部”文本都是链接之后的第二个元素(第一个元素是链接锚定)。在

相关问题 更多 >

    热门问题