用python从web上抓取数据时,如何在字符串中的某个位置加一个空格

2024-05-15 21:10:54 发布

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

我在网上练习时遇到了一个问题。你知道吗

我想打印如下数据:

Level :2

DC Fast :12

Level :2

我用了browser[0].find("div",{"class":"pin_info"}).text[1:]但是,我得到的是Level :2DC Fast :12Level :2,每个部分之间没有空格。你知道吗

下面是我搜集的html:

<div class="pin_info"> 
  <span class="pinID">A</span> 
  <i style="background-image:url('/UI/images/icons/new_icons/cg_un.png?1000017283')"></I>
  <span class="dark">Level 2</span>
  : 2
  <br>
  <span class="dark">DC Fast</span>
  : 12
  <br>
  <span class="dark">Level 2</span>
  : 2
</div>

我现在不知道如何把每个部分分开。有人有什么想法吗? 任何回应都将不胜感激!你知道吗


Tags: 数据textbrdivbrowserinfopinfind
1条回答
网友
1楼 · 发布于 2024-05-15 21:10:54

您可以使用getText方法而不是.text属性,因为它有一个可选的分隔符参数,允许您将分隔符替换为所需的任何内容(此处为“\n”),如下所示:

browser[0].find("div",{"class":"pin_info"}).getText(separator="\n")

结果:

A


Level 2
: 2

DC Fast
: 12

Level 2
: 2

然后你可以用它来操作字符串,直到得到你想要的结果,比如:

info = browser[0].find("div",{"class":"pin_info"}).getText(separator="\n")[5:].split("\n\n")
'\n'.join(map(lambda x: x.replace("\n", " "), info))

输出:

Level 2 : 2
DC Fast : 12
Level 2 : 2

相关问题 更多 >