python中oxf_python的strip()函数不工作

你发布的代码无法运行。而且,即使在我猜到如何修复它以运行之后,它实际上并没有做您所声称的事情。但我很肯定我知道错误在哪里。

此代码不返回空字符串,但返回

"

:

text = div.get_text().strip().split(" ", 1)[0].strip()

不是因为

strip

. 因为,与您所宣称的相反,此代码并不包含您首先需要的文本:

text = div.get_text().strip().split(" ", 1)[0]

但更确切地说

'"\n'

. 当然,剥线会给你一个空字符串。

如果打印出中间部分,您可以看到原因:

>>> div.get_text()

'\n "\n Text I want \n "\n \nEdit\n\n'

>>> div.get_text().strip()

'"\n Text I want \n "\n \nEdit'

>>> div.get_text().strip().split(" ", 1)

['"\n', ' Text I want \n "\n \nEdit']

>>> div.get_text().strip().split(" ", 1)[0]

'"\n'

>>> div.get_text().strip().split(" ", 1)[0].strip()

'"'

看起来就像你

事实上

想做的是找到前两个之间的文本

字符,然后拆分:

>>> div.get_text().strip().split('"', 2)[1].strip()

'Text I want'

但同时,我认为通过包含所有后代文本而不仅仅是直接的子文本,您使事情变得比需要的更复杂。如果我们没有

Edit

要处理的部分是,整件事只是你想要的文本,周围是一个复杂的空间、换行符和引号的混合体,我们可以一次性将它们全部去掉:

>>> div.contents[0]

'\n "\n Text I want \n "\n

>>> div.contents[0].strip(' \n"')

'Text I want'

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值