找回密码
 加入慢享
猜你喜欢
旅行常客论坛

手把手教你利用Python网络爬虫获取旅游景点信息

[复制链接]
发表于 2020-6-4 13:00:00 | 显示全部楼层 |阅读模式
点击上方“Python爬虫与数据挖掘”,进行关注

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

桃之夭夭,灼灼其华。

/1 前言/

    当我们出去旅游时,会看这个地方有哪些旅游景点,景点价格、开放时间、用户的评论等。

    本文基于Python网络爬虫技术,以hao123旅游网为例,获取旅游景点信息。


/2 项目目标/

    获取网站的景点名称、开放时间、精彩点评、价格等信息。


/3 涉及的库和网站/

    先列出网址,如下所示:

网址:https://go.hao123.com/ticket?city=%E5%B9%BF%E5%B7%9E&theme=all&pn=1

    网址city=%E5%B9%BF%E5%B7%9E指的是广州这个城市、pn指的是页数。

    需要用到的库:requests、lxml、pprint


/4 具体实现/

    1. 导入我们需要的库

import requestsfrom lxml import etreefrom pprint import pprint

    2. 导入库之后,我们定义一个class类,然后定义一个init方法继承self再定义一个主函数main,定义一个init方法:首先准备url地址,headers,如下图所示。

    3. 定义一个请求函数,获取响应数据函数:

    4. 请求到数据后,我们需要把这个数据进行解析:

    5. 获取景点名称二级页面链接:使用xpath查找链接路径用谷歌浏览器选择开发者工具或者按F12,选择Elements按数字1、2操作找到旅游景点名称二级页面链接。

    6. 根据分析,我们可以撸下代码。

    7. 获取二级页面链接后,发送请求获取响应,解析数据。定义一个字典,保存景点名称、开放时间、精彩点评、价格。使用判断语句判断里面内容是否是空的。

    8. 最后定义一个main函数,如下图所示。


/5 效果展示/

    1. 点击绿色按钮运行,将结果显示在控制台,如下图所示。输入你要爬取的页数。


/6 小结/

1. 不建议抓取太多数据,容易对服务器造成负载,浅尝辄止即可。

2. 希望通过这个项目,能够帮助大家更好的了解旅游景点。

3. 本文基于Python网络爬虫,利用爬虫库,实现旅游网站部分信息的抓取。

4. 欢迎大家积极尝试,有时候看到别人实现起来很简单,但是到自己动手实现的时候,总会有各种各样的问题,切勿眼高手低,勤动手,才可以理解的更加深刻。

5. 如果本文源码的小伙伴,请在后台回复“旅游”两个字进行获取,觉得不错,记得给个Star噢~


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

往期精彩文章推荐:

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

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

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

/今日留言主题/

说一两个你常用的爬虫库吧~~

回复

使用道具 举报

快速回复 返回顶部 返回列表