1

我使用beautifulsoup库的脚本内容如下:

 <meta content="Free" itemprop="price" />

 <div class="content" itemprop="datePublished">November 4, 2013</div>

我想从该输出中提取“免费”和 2013 年 11 月 4 日这两个词。是否会使用正则表达式帮助或beautifulsoup 是否有任何此类属性可以直接将其提取出来?这是我在下面使用的代码:

   from BeautifulSoup import BeautifulSoup
   import urllib
   import re

   pageFile = urllib.urlopen("https://play.google.com/store/apps/details?id=com.ea.game.fifa14_na")
   pageHtml = pageFile.read()
   pageFile.close()

   soup = BeautifulSoup("".join(pageHtml))
   item = soup.find("meta", {"itemprop":"price"})

   print item
   items = soup.find("div",{"itemprop":"datePublished"})

   print items
4

1 回答 1

4

好的,我知道了!只需通过以下方法访问值(对于上述情况):

   from BeautifulSoup import BeautifulSoup
   import urllib


   pageFile = urllib.urlopen("https://play.google.com/store/apps/details?id=com.ea.game.fifa14_na")
   pageHtml = pageFile.read()
   pageFile.close()

   soup = BeautifulSoup("".join(pageHtml))
   item = soup.find("meta", {"itemprop":"price"}) # meta content="Free" itemprop="price"
   print item['content']
   items = soup.find("div",{"itemprop":"datePublished"})
   print items.string

无需添加正则表达式。只需阅读文档就会有所帮助

于 2013-11-04T20:45:26.320 回答