2010-12-06 41 views
0

<option>sを次のHTML形式で選択する方法はありますか<select> ['a'、 'b'、 'c'、 'd']のようにpythonリストに入れる?html選択肢をリストに選択

<select name="sel"> 
    <option value="a">a</option> 
    <option value="b">b</option> 
    <option value="c">c</option> 
    <option value="d">d</option> 
</select> 

事前に感謝します。

答えて

5
import re 
text = '''<select name="sel"> 
    <option value="a">a</option> 
    <option value="b">b</option> 
    <option value="c">c</option> 
    <option value="d">d</option> 
</select>''' 
pattern = re.compile(r'<option value="(?P<val>.*?)">(?P=val)</option>') 
handy_list = pattern.findall(text) 
print handy_list 

意志出力

['a', 'b', 'c', 'd'] 

免責事項:正規表現と解析HTMLは、一般的なケースでは動作しません。

2

あなたは他のHTMLデータを解析したい場合にも

from BeautifulSoup import BeautifulSoup 

text = '''<select name="sel"> 
    <option value="a">a</option> 
    <option value="b">b</option> 
    <option value="c">c</option> 
    <option value="d">d</option> 
</select>''' 

soup = BeautifulSoup(text) 

print [i.string for i in soup.findAll('option')] 
BeautifulSoupで見たいと思うかもしれません
関連する問題