当前位置:  开发笔记 > 编程语言 > 正文

用于HTML解析的Python正则表达式(BeautifulSoup)

如何解决《用于HTML解析的Python正则表达式(BeautifulSoup)》经验,为你挑选了4个好方法。

我想在HTML中获取隐藏输入字段的值.


我想在Python中编写一个正则表达式,它将返回值fooId,因为我知道HTML中的行遵循格式


有人可以在Python中提供一个示例来解析HTML的值吗?



1> Vinko Vrsalo..:

对于这个特殊情况,BeautifulSoup比正则表达式更难写,但它更强大......我只是贡献了BeautifulSoup示例,因为你已经知道使用哪个正则表达式:-)

from BeautifulSoup import BeautifulSoup

#Or retrieve it from the web, etc. 
html_data = open('/yourwebsite/page.html','r').read()

#Create the soup object from the HTML data
soup = BeautifulSoup(html_data)
fooId = soup.find('input',name='fooId',type='hidden') #Find the proper tag
value = fooId.attrs[2][1] #The value of the third attribute of the desired tag 
                          #or index it directly via fooId['value']



2> 小智..:

我同意Vinko BeautifulSoup是要走的路.不过我建议使用fooId['value']来获取属性,而不是依靠值是第三属性.

from BeautifulSoup import BeautifulSoup
#Or retrieve it from the web, etc.
html_data = open('/yourwebsite/page.html','r').read()
#Create the soup object from the HTML data
soup = BeautifulSoup(html_data)
fooId = soup.find('input',name='fooId',type='hidden') #Find the proper tag
value = fooId['value'] #The value attribute



3> Cody Brociou..:
import re
reg = re.compile('')
value = reg.search(inputHTML).group(1)
print 'Value is', value



4> Orion Edward..:

解析是你真的不想自己动手的地方之一,如果你可以避免它,因为你将追逐边缘案例和bug多年来会来

我建议使用BeautifulSoup.它具有非常好的声誉,从文档中看起来很容易使用.

推荐阅读
重庆制造漫画社
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有