【问题标题】:Extracting a string from a txt file从txt文件中提取字符串
【发布时间】:2013-01-10 14:25:14
【问题描述】:

所以我只是在尝试,尝试使用 python 解析网络,我想我会尝试制作一个脚本来搜索我最喜欢的链接以在线观看节目。我现在正试图通过 sidereel.com 搜索我的节目,以找到我想要的节目的良好链接,并将链接返回给我。我知道该网站以以下格式保存链接:

watch-freeseries.mu'然后是一些我需要忽略的长字符串,然后是 '14792088'

所以我需要做的是在网站的 txt 文件中找到这个字符串,然后只返回字符串末尾的 8 个数字。我不确定如何获得这些号码,我需要它们,因为它们是链接号码。任何帮助将不胜感激

【问题讨论】:

标签: python string python-2.7 extract


【解决方案1】:

您可以使用regular expression 相当容易地做到这一点。

>>> import re
>>> text = "watch-freeseries.mu=lklsflamflkasfmsaldfasmf14792088"
>>> expr = re.compile("watch\-freeseries\.mu.*?(\d{8})")
>>> expr.findall(text)
['14792088']

表达式分解:

watch\-freeseries\.mu - 匹配预期表达式的开头。通过在它们前面加上\ 来转义任何可能的特殊字符。

.*? - 匹配任何字符。 . 表示任何字符,* 表示一个接一个地出现无数次。 ? 是执行非贪婪匹配,这样如果两个或多个 url 出现在同一个字符串中,匹配就不会重叠。

(\d{8}) - 匹配并保存最后 8 位数字

注意:如果您尝试从网页中解析链接,则有更简单的方法。我在 StackOverflow 上看到了很多关于 BeautifulSoup 包的建议。我自己从来没用过,所以YMMV。

【讨论】:

  • 这种方法实际上效果很好,虽然我会研究 BeautifulSoup。谢谢
猜你喜欢
  • 2013-07-03
  • 1970-01-01
  • 2021-07-07
  • 1970-01-01
  • 2021-04-22
  • 2015-05-09
  • 2013-06-28
  • 2022-12-16
  • 1970-01-01
相关资源
最近更新 更多