是否有Python命令返回夹在两个标识符之间的字符串?

时间:2017-05-02 17:22:03

标签: python html-parsing

我正在抓取网页html中的值,如下所示:

location=1">MAIN BUILDING</a> : -25.49<br />

我成功使用了Python的分区两次:一次保存ID字符串MAIN BUILDING</a> :之后的所有内容,然后再次将部分保存在<br />

之前

两次使用分区似乎太可怕了。但是有更好的方法吗?似乎应该有一种方法可以在一步而不是两步中提取夹在两个其他字符串之间的字符串。

1 个答案:

答案 0 :(得分:1)

您可以将str.index与Python字符串索引一起用于单行:

>>> s = 'location=1">MAIN BUILDING</a> : -25.49<br />'
>>> begin = 'MAIN BUILDING</a> :'
>>> end = '<br />'
>>> s[s.index(begin):s.index(end)]
'MAIN BUILDING</a> : -25.49'

这假定很多事情:

  1. 您提供的确切文字将分隔相关字符串。
  2. 两段文字只出现一次。