2013-03-09 47 views
0

我解析HTML頁面的內容,在每一個有獲取textarea的

<textarea name="content[country]">...</textarea>

只需要得到這個文本區域的內容。

我的Python版本中沒有lxml或其他html解析模塊,因爲它在文本編輯器環境中工作。

如何解析名稱爲content[country]的textarea的開始標籤和結束標籤之間的文本?

回答

0

假設你仍然有機會獲得STDLIB,那麼你可以使用類似:

import xml.etree.ElementTree as ET 

s = '<html><textarea name="content[country]">foo</textarea><textarea name="content[country]">bar</textarea></html>' 
tree = ET.fromstring(s) 
print [n.text for n in tree.iterfind('.//textarea[@name="content[country]"]')] 
# ['foo', 'bar'] 

可怕重新黑客:

import re 
print re.findall(r'<\s*textarea.*?>(.*?)<', s) 
+0

xml.parsers.expat.ExpatError:沒有很好地形成(無效的令牌) – Jasper 2013-03-09 10:56:51

+0

啊,好點 – 2013-03-09 10:57:58

+0

它可以解析爲正則表達式字符串? – Jasper 2013-03-09 10:59:31