我需要从文本中剪切出特定部分。
以下是其中的一小部分:
</span>
<span class="package" data-subid="570168" data-appid="1597920" data-parent="544810">
<a href="/sub/570168/">570168</a>
, // <button class="js-remove btn btn-danger">[Hide]</button>
KARDS - Anniversary Edition
</span>
<span class="package" data-subid="569859" data-appid="1606900" data-parent="-1277130">
<a href="/sub/569859/">569859</a>
, // <button class="js-remove btn btn-danger">[Hide]</button>
Deathbound Demo
</span>
...
我需要将 data-appid="" 里面的数字导出为以下格式:“1597920,1606900”
有没有简单的方法来完成这种工作?
感谢您的所有帮助!
干杯
答案1
不要尝试用 来解析或html
,而是使用适当的解析器。xml
grep
我会使用python
模块 BeautifulSoup
。将以下内容放入脚本中:
#!/usr/bin/env python3
from bs4 import BeautifulSoup
import sys
soup = BeautifulSoup(sys.stdin, 'html.parser')
for p in soup.find_all("span", {"class": "package"}):
print(p["data-appid"])
然后运行
< file.html python3 test.py
或者如果你尝试解析一个网站:
curl exampel.com/some_page | python3 test.py
您需要安装bs4
模块,例如使用pip
或pip3
:
pip3 install bs4
#or
pip install bs4