解析从BeautifulSoup返回的JavaScript

解析从BeautifulSoup返回的JavaScript,第1张

解析从BeautifulSoup返回的JavaScript

像PhantomJS这样的东西可能更健壮,但是这里有一些基本的Python代码可以提取整个菜单

import jsonimport reimport urllib2text = urllib2.urlopen('http://dcsd.nutrislice.com/menu/meadow-view/lunch/').read()menu = json.loads(re.search(r"bootstrapData['menuMonthWeeks']s*=s*(.*);", text).group(1))print menu

之后,您需要在菜单中搜索感兴趣的日期。

编辑 :我的一些过分杀伤力

import itertoolsimport jsonimport reimport urllib2text = urllib2.urlopen('http://dcsd.nutrislice.com/menu/meadow-view/lunch/').read()menus = json.loads(re.search(r"bootstrapData['menuMonthWeeks']s*=s*(.*);", text).group(1))days = itertools.chain.from_iterable(menu['days'] for menu in menus)day = next(itertools.dropwhile(lambda day: day['date'] != '2014-01-13', days), None)if day:    print 'n'.join(item['food']['description'] for item in day['menu_items'])else:    print 'Day not found.'


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5653077.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存