[英]Python findall regex issue
因此,基本上我的主要問題來自findall的正則表達式部分。 我正在嘗試對某些信息進行網絡抓取,但是我一生都無法正確獲取任何數據。 我以為(\\ S + \\ S +)是正則表達式的一部分,我會從<li>
和</li>
的HTML代碼之間的任何部分中提取出來,但是我卻從print(數據)。 我意識到我將需要為每個列表代碼部分中的每個單詞使用\\ S +,所以我將如何處理呢? 另外,如何獲得將HTML的每個不同部分與列表代碼部分一起發布的信息?
輸入:僅網站。
輸出:在這種情況下,它應該是專輯標題(即Mikky Ekko-時間)
import urllib.request
from re import findall
url = "http://rnbxclusive.se"
response = urllib.request.urlopen(url)
html = response.read()
htmlStr = str(html)
data = findall("<li>(\S+ \S+)</li>.*", htmlStr)
print(data)
for item in data:
print(item)
使用lxml
import lxml.html
doc = lxml.html.fromstring(response.read())
for li in doc.findall('.//li'):
print li.text_content()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.