手把手用Python网络爬虫带你爬取全国著名高校附近酒店评论

点击上方“Python爬虫与数据挖掘”,进行关注

回复“书籍”即可获赠Python从入门到进阶共10本电子书

我站在鼓楼下边,一切繁华与我无关。

/1 前言/

  简介:本文介绍如何用python爬取全国著名高校附近的酒店点评,并进行分析,带大家看看著名高校附近的酒店怎么样。

/2 具体实现/

  具体的实现主要是分为三步,具体的操作过程如下。

一、抓取高校附近的酒店信息

  由于电脑客户端的美团酒店没有评论信息,于是我从手机端的网页入手,网页地址为:https://i.meituan.com/awp/h5/hotel/search/search.html

  通过搜索北京大学附近的酒店,抓包找到了返回酒店json信息的url。

  其中,limit代表返回酒店的最大数量(经测试,limit最大为50),offset为每次返回酒店数量的起点,cityId为城市的标志,在网页信息中可以找到,时间参数可以修改,sort为返回酒店信息的排序,sort=distance代表按距离搜索,q和keyword都是大学名称。

  返回的数据如下图所示:

手把手用Python网络爬虫带你爬取全国著名高校附近酒店评论_第1张图片

    包含酒店的名字、地理位置、评分、realPoiId(相当于酒店的身份证号,后面爬评论用的到)、酒店和大学的距离等信息。

    下面我们开始爬排名前10高校附近的酒店信息(不要在乎大学排名,我乱找的,以学习为主):

手把手用Python网络爬虫带你爬取全国著名高校附近酒店评论_第2张图片

(图片来源于网络)

  部分代码如下图所示:

手把手用Python网络爬虫带你爬取全国著名高校附近酒店评论_第3张图片

  其中cityId和大学名字为控制变量,通过返回的距离信息将酒店位置控制在2000米以内,输出结果为:

手把手用Python网络爬虫带你爬取全国著名高校附近酒店评论_第4张图片

  看看这10所大学2000米附近附近有多少家酒店:

手把手用Python网络爬虫带你爬取全国著名高校附近酒店评论_第5张图片

  我们可以发现,南京大学附近酒店最多,有453家;上海交通大学闵行校区附近酒店最少,有75家。

二、抓取每家酒店的点评信息

  这个从这个url可以返回每家酒店的评论数量,poiId是酒店的“身份证号”。

手把手用Python网络爬虫带你爬取全国著名高校附近酒店评论_第6张图片

  这个url可以返回酒店的所有评论信息,其中limit为返回的评论数量,可以直接用上个url返回的评论数量,一次全部以json格式返回,非常方便,返回结果如下:

手把手用Python网络爬虫带你爬取全国著名高校附近酒店评论_第7张图片

三、遇到的坑

  1.刚开始爬评论是1次返回15个,后来发现可以Limit可以为评论的最大值,但是第一步返回的酒店信息中包含酒店评论数量是不准确的,要用第二步的方法;

  2.评论中乱七八糟的表情、符号也是大坑,去了好久也去不干净;

  3.最好用代理IP地址爬,否则评论太多,会被封。

/3 结语/

  本文基于Python网络爬虫,抓取了高校旁边的酒店数量及其评论数量,如果你想抓取其他地方的其他信息,也是可行的,可以纵向拓展。

  欢迎大家尝试,消耗在家的无聊时间本文涉及的代码都上传到了github地址上,后台回复“高校酒店”四个字即可获取代码

------------------- End -------------------

往期精彩文章推荐:

  • 干货|Python大佬手把手带你破解哔哩哔哩网滑动验证(下篇)

  • 40行代码教你利用Python网络爬虫批量抓取小视频

  • 女神照片当背景,使用Python做个免费的VIP视频播放软件

欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

想加入Python学习群请在后台回复【入群

万水千山总是情,点个【在看】行不行

/今日留言主题/

说一两个你曾经去旅游过的城市?

你可能感兴趣的:(手把手用Python网络爬虫带你爬取全国著名高校附近酒店评论)