Мне нужно вырезать определенные части из текста ..
Здесь небольшая его часть:
</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"
Есть ли простой способ сделать такой вид работа?
Спасибо за вашу помощь!
Ура
Не пытайтесь анализировать 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