中秋节出门游玩住宿找不到,酒店信息掌握不准?爬虫帮你解决_出门找不到酒店怎么办

效果展示

image.png

工具使用

开发工具:pycharm
开发环境:python3.7, Windows10
使用工具包:requests

项目思路解析

首先选取自己想去旅游的景点,获取景点附近的数据,就比方说白又白中秋国庆打算去长沙游玩获取的就是长沙的住宿酒店(要长沙游玩的可以滴滴白又白)
image.png

获取到数据后确定数据的加载是静态数据还是动态数据,当前网页数据为动态加载动态数据需要通过抓包的方式获取,打开调试工具获取到数据
image.png
确定好数据后就可以进入代码环节了,对网址发送网络请求

url = 'https://ihotel.meituan.com/hbsearch/HotelSearch?utm_medium=pc&version_name=999.9&cateId=20&attr_28=129&uuid=73B01E7C1051ACFB5730B1C1CD456776945CB50F887E09211F020EB1F6C89996%401631623416857&cityId=198&offset={}&limit=20&startDay=20210914&endDay=20210914&q=&sort=defaults&X-FOR-WITH=4ArIbixslGNtC2oCAtBb2cXDcp3jPZ5xX01C1%2FuNnCXQqh0Edqc3Dkag7qJcicwPAPLY%2FljJLm6wQMNIxLvp9b%2BYD0zfZCkSVgXL0zJuhuGKUZIaSNcfRtkjSISQqvXCOBdIJU9o2Kiz1YxsEqKX%2BlSNhmge6otjb%2B%2FQSr5lMWEicjgDCcQNg0jLrkAO1WXcFHMYZO40i6QdyAWbmxLV6TnJetfiLBxM0oQEvvcnOyA%3D'.format(i * 20)
        headers = {
            'Host': 'ihotel.meituan.com',
            'Origin': 'https://hotel.meituan.com',
            'Referer': 'https://hotel.meituan.com/',
            'Cookie': 'uuid=3c6a1ffa63c44f609095.1631265937.1.0.0; _lxsdk_cuid=178d04766dac8-08045ec98b749f-3f356b-1fa400-178d04766dbc8; mtcdn=K; IJSESSIONID=node01wdulauewgz8610kyb50ik2ee51588346; iuuid=73B01E7C1051ACFB5730B1C1CD456776945CB50F887E09211F020EB1F6C89996; _lxsdk=73B01E7C1051ACFB5730B1C1CD456776945CB50F887E09211F020EB1F6C89996; backurl=http://i.meituan.com/awp/h5/hotel/list/list.html?cityId=96&accommodationType=1&checkIn=2021-09-14&checkOut=2021-09-15; i_extend=Gempty; ci=1; rvct=1%2C96; cityname=%E5%8C%97%E4%BA%AC; _lx_utm=utm_source%3DBaidu%26utm_medium%3Dorganic; _lxsdk_s=17be4558492-2b-59d-9d2%7C%7C2',
            'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36'
        }
        response = requests.get(url, headers=headers)
        print(response.text)

记得带上对应数据请求头获取到json数据

从数据中选取自己想要的数据参数

# 提取想要的数据
            item = {}
            item['historySaleCount'] = data['historySaleCount']
            item['cityName'] = data['cityName']
            item['areaName'] = data['areaName']
            item['name'] = data['name']
            item['scoreIntro'] = data['scoreIntro']
            # item['positionDescList'] = [i['text'] for i in data['forward'].get('positionDescList', "没有")]
            item['poiTagList'] = [i['text'] for i in data['poiTagList']]
            print(item)

提取的数据有各位大佬自己决定
最后将数据保存在csv表格里

最后

🍅 硬核资料:关注即可领取PPT模板、简历模板、行业经典书籍PDF。
🍅 技术互助:技术群大佬指点迷津,你的问题可能不是问题,求资源在群里喊一声。
🍅 面试题库:由技术群里的小伙伴们共同投稿,热乎的大厂面试真题,持续更新中。
🍅 知识体系:含编程语言、算法、大数据生态圈组件(Mysql、Hive、Spark、Flink)、数据仓库、Python、前端等等。

  • 9
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值