17日更新:版权方面做马赛克处理,请审核高抬贵手。
今天上班摸鱼的时候发现了一个比较新鲜的网站,是一个日本美食攻略的网站:
左边呢是各个店家的基本信息,右边也集成了地图 。
反正疫情也出不去,这个网站的地图卫星图像也能云旅游,而左边的这些店铺的数据呢,就可以拿下来给未来做做旅游攻略了。
一、网站分析
进入首页,可以看到各个地区的分类,而下面是按食品的分类,人数等等。
这次就按地区来获取数据。随便进入一个地区,点开地区排行榜,就进入列表页了,点击列表就进入详情了,简单的列表-列表-详情的三段式结构。
二、数据获取
首先进入主页,获取所有地区:
def getList():
Url = "https://tabelog.com/cn/"
headers = {
"authority": "tabelog.com",
"accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.67 Safari/537.36",
}
res = requests.get(Url,headers=headers)
content = res.content.decode('utf-8')
sel = Selector(text=content)
nodes = sel.css(".index-area section dl dd ul li")
for node in nodes:
area = node.css("a::text").extract_first()
areaUrl = node.css("a::attr(href)").extract_first()+"rstLst/?SrtT=