• 优质范文
  • 工作总结
  • 工作计划
  • 作文大全
  • 心得体会
  • 述职报告
  • 实习报告
  • 写作方案
  • 教案反思
  • 演讲稿
  • 发言稿
  • 读书笔记
  • 精美散文
  • 读观后感
  • 当前位置: 博通范文网 > 优质范文 > 正文

    爬虫分析城市温度之旅游导向

    时间:2022-11-02 来源:博通范文网 本文已影响 博通范文网手机站

    摘要:随着互联网技术的飞速发展,互联网用户人数和互联网信息飞速增长,使得人们越来越依赖搜索引擎。网络爬虫作为搜索引擎中的一個重要的组成部分,是用户获取有效网络资源的强大工具。通过对网络爬虫的基本结构、基本工作流程进行分析,利用Python实现对中国所有城市的最高、最低温度指标进行实时数据爬取、分析以及数据可视化。本项目对中国各个城市的温度情况进行实时爬取、分析,并将结果通过大数据可视化的方式,较为直观地展现给用户,为用户选择适合的旅游城市起到向导作用,因此应用前景较为广阔,具有一定的实用性。

    关键词:Python;爬虫;数据爬取;数据可视化

    中图分类号:TP391 文献标识码:A

    文章编号:1009-3044(2019)11-0029-02

    Abstract: With the rapid development of the Internet, the number of Internet users and the rapid growth of Internet information make people rely more and more on search engines. As an important part of search engine, web crawler is a powerful tool for users to obtain effective network resources. Based on the analysis of the basic structure and workflow of web crawler, data crawling, analysis and data visualization of the highest and lowest temperature indicators in all cities of China are realized by Python. This project will analyze the temperature situation of each city in China and show the results intuitively, which will undoubtedly play a guiding role in tourists"choice of tourist cities. Therefore, it has a broad application prospect and certain practicability.

    Key words: Python; Spider; Data crawling; Data visualization

    1创意介绍

    1.1 项目介绍

    本项目利用PyCharm作为开发工具软件,通过爬取技术获取了中国各个城市的最高温度和最低温度,对各个城市的温度进行分析处理,并将所有城市的最高温度和最低温度进行数据可视化,较为直观地反映了城市的温度状况。

    为选择旅游城市的游客提供城市温度向导。本项目实现了从城市温度的数据爬取到城市温度的数据可视化工作。

    1.2 项目可行性分析与应用前景

    随着人们生活水平的提高,不再将注意力放到解决温饱这个问题上,越来越多的人追求更舒适时尚的生活,根据调查,2018年中国国内旅游人数达28.26亿人次,比上年同期增长11.4%,国内旅游收入达2.45万亿元。本项目对中国各个城市的温度情况进行分析并将结果较为直观的展现,对游客旅游城市的选择起到了一定的向导作用,因此应用前景较为广阔。

    本项目采用Python爬虫技术,利用PyCharm工具软件及Python2.7解析器,使用Python的解析库BeautifulSoup,爬取了中国各个城市的名称及其最低、高温度数据并保存为项目文件,使用numpy进行数据分析,分析出最冷和最热的城市以及均值,最后通过pyecharts库对数据进行可视化。

    2功能介绍

    2.1 总体功能结构图

    2.2 模块功能介绍

    2.2.1 爬虫功能模块

    通过BeautifulSoup方法对网页进行解析,分析出中国所有的城市名称以及对应的温度,将保存到项目根目录中来。

    2.2.2 ECharts数据可视化功能模块

    引入pyecharts库,以获取到的城市名称为横坐标,对应的温度数值为纵坐标,绘制柱状图。

    3 总体设计

    3.1 数据设计

    3.1.1 数据流程设计

    本项目的数据来源为中国天气网定期更新的天气数据,使用requests库模拟Chrome浏览器,使用requests.get()方法对网页数据进行访问并爬取。

    3.1.2 数据仓库设计

    将爬取到的数据利用json库转化成:“城市名—最低温度—最高温度”的格式存储到项目根目录之下。

    3.2 界面设计

    3.2.1 最高温度界面

    3.2.2 最低温度界面

    3.3 架构设计

    3.3.1采用架构的原因

    本项目采用了scrapy框架,scrapy是一个为爬取网站数据,提取结构性数据而编写的应用框架,我们只需要实现少量代码,就能够快速的抓取到数据内容。scrapy使用了Twisted异步网络框架来处理网络通讯,可以加快我们的下载速度,不用自己去实现异步框架,并且包含了各种中间接口,可以灵活地完成各种需求。

    scrapy的工作流程:

    a.首先Spiders(爬虫)将需要发送请求的url(requests)经ScrapyEngine(引擎)交给Scheduler(调度器)。

    b.Scheduler(排序,入队)处理后,经ScrapyEngine,DownloaderMiddlewares(可选,主要有User_Agent, Proxy代理)交给Downloader。

    c.Downloader向互联网发送请求,并接收下载响应(response)。将响应(response)经ScrapyEngine,SpiderMiddlewares(可选)交给Spiders。

    d.Spiders处理response,提取数据并将数据经ScrapyEngine交给ItemPipeline保存(可以是本地,可以是数据库)。

    e.提取url重新经ScrapyEngine交给Scheduler进行下一个循环。直到无Url请求程序停止结束。

    4 技术难点

    本项目开发过程中,主要遇到2个技术难点,具体技术难点及解决方法如下:

    4.1 突破反爬虫技术难点

    爬取数据过程中,很多网站设置了反爬虫限制,他们根据ip访问评率、浏览网页速度、flash封装等技术来反爬虫。

    团队通过伪装Chrome浏览器的User agent信息为请求头,在使用请求方法时以请求头为参数。

    4.2大数据可视化技术难点

    在完成大数据可视化的过程中,由于Python3已经不适用echarts库来进行数据可视化,使团队在完成数据可视化的过程中遇到了难点。取而代之的是pyecharts库。

    5 项目总结

    大数据是近几年迅速兴起的技术,由于本项目组成员对此技术的把握还尚不成熟,在编写爬虫的过程中遇到了一系列的问题,项目组成员通過查阅资料、阅读Python帮助文档最终克服了遇到的一系列问题。

    通过完成此项目,团队成员收获了如何对设置爬虫限制的网页进行访问,以及scrapy爬虫框架的使用。为项目组成员开发更为有意义、更有技术难度的爬虫打下了基础。

    项目组成员由两名计算机专业的本科学生组成,由于实力还存在欠缺,本项目还存在一些不足,希望在未来,为其添加旅游景点、机票火车票预订等功能,做成一个融入金融支付的项目。

    参考文献:

    [1] 舒万畅.爬虫在大数据领域中的应用分析[J].科学技术创新,2018(6).

    [2] 田晓玲.基于数据分析的关键词类网络爬虫设计[J].北京工业职业技术学院学报,2018(7).

    [3] 陈乐.基于Python的网络爬虫技术[J].电子世界,2018(3).

    [4] 张岩.大数据反爬虫技术分析[J].信息系统工程,2018(14).

    [5] 郑苗.基于网络爬虫的北京市放假研究[J].长江大学,2018(5).

    [6] 魏倩男.基于网络爬虫的京东电商平台数据分析[J].经济数学,2018(7).

    【通联编辑:梁书】

    推荐访问:爬虫 导向 温度 分析 城市

    • 读/观后感
    • 精美散文
    • 读书笔记
    • 演讲
    • 反思
    • 方案
    • 心得体会