0

我的想法是探索 Groupon 的网站以提取交易的 url。问题是我正在尝试在 Groupon 的页面上进行查找以查找如下数据:(此页面的:http: //www.groupon.de/alle-deals/muenchen/restaurant-296

"category":"RESTAURANT1","dealPermaLink":"/deals/muenchen-special/Casa-Lavecchia/24788330", and I'd like to get the 'deals/muenchen-special/Casa-Lavecchia/24788330'.

我尝试了整个晚上,但我找不到正确的正则表达式。我试过了:

import urllib2
import re
Page_Web = urllib2.urlopen('http://www.groupon.de/alle-deals/muenchen/restaurant-296').read()
for m in re.findall('category*RESATAURANT1*dealPermaLink*:?/*/*/*/*\d$',Page_Web):
   print m

但它不打印任何东西。

4

2 回答 2

1

为了推断您感兴趣的块,我会这样做:

from bs4 import BeautifulSoup
import urllib2
html = urllib2.urlopen('http://www.groupon.de/alle-deals/muenchen/restaurant-296').read()
soup = BeautifulSoup(html)
scriptResults = soup('script',{'type' : 'text/javascript'})
js_block = scriptResults[12]

从这里开始,您可以根据需要使用正则表达式进行解析或尝试解释 js(stackoverflow 上有一些关于此的线程)。

无论如何,就像其他人说的那样,你应该使用 groupon api ...

PS您正在解析的块可以很容易地解析为字典,如果您看起来不错的话已经是字典列表...

于 2013-07-30T09:36:10.513 回答
-1

换成RESATAURANT1,RESTAURANT1对于初学者怎么样?

于 2013-07-30T09:30:14.877 回答