我正在解析 HTML 页面,每个页面都有
<textarea name="content[country]">...</textarea>
只需要获取此文本区域的内容。
我的 python 版本中没有 lxml 或其他 html 解析模块,因为它在文本编辑器环境中工作。
如何使用 name 解析 textarea 的开始标签和结束标签之间的文本content[country]
?
假设您仍然可以访问 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)