我正在开发一个解析HTML页面的项目。它适用于公司内部的网站,但我更改了示例,以便您可以尝试。
我获取HTML页面的源代码,然后搜索某个标记。然后我想提取这个标记的子字符串,但它不起作用。 Python返回一个无...在我的代码下面,在注释中返回Python:
#!/usr/bin/python
import urllib2
from bs4 import BeautifulSoup
response = urllib2.urlopen("http://www.resto.be/restaurant/liege/4000-liege/8219-le-bar-a-gouts/")
page_source = response.read()
soup = BeautifulSoup(page_source)
name = soup.find_all("meta", attrs={"itemprop":"name"})
print(name[0])
# <meta content="LE BAR A GOUTS" itemprop="name"/>
print(name[0].find("<meta"))
# none
答案 0 :(得分:4)
您没有字符串,您有标记对象。打印标签有一个很好的HTML表示,但它不是一个字符串对象。
因此,您正在使用BeautifulSoup Tag.find()
函数,如果没有标记名为None
的子标记,则返回<meta
。确实没有这里。
如果要查找content
属性,请使用项目访问权限:
print name[0]['content']