山东大学创新项目实训个人工作日志(七)

基本完成了对去哪儿网的门票信息的爬取。

首先通过选取城市的界面得到所有城市的ID,因为去哪儿网采用的ID直接是城市名称的汉字,但是如果直接输入城市,可能会和网站规定的名称不一致,所以提前进行了爬取,并把它保存在列表之中,使用的时候直接利用模糊搜索(fuzzywuzzy库)搜索出即可。

在爬取去哪儿网的过程中,遇到的最大问题就是如何根据景点来获取所有的门票信息,通过在网页的开发者模式下观察,我发现在加载景点详细页面的时候,有一个getTicket.json的一个json格式的页面被加载,而里面恰好就是所有门票的详细信息,而该页面的请求需要传入参数sightId。

所以问题就成了sightId该去哪找,去搜索结果浏览页面查询源代码,发现网页源代码中并没有该类信息,最后发现是在该页面的JavaScript代码之中,所以通过正则表达式re匹配:

f = re.search(re.compile('"sightId": "(.*)"'), html).group()
f = "{"+f+"}"
g = json.loads(f)
return g['sightId']

即可查询出,然后将其加在网页请求中,返回的就是门票的json信息了,剩下的工作就是从中抽取出我们所需要的东西并进行整合了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值