导航菜单
首页 >  全国数学建模竞赛真题关于飞机  > 关于2019数模国赛C题爬取数据

关于2019数模国赛C题爬取数据

关于2019数模国赛C题

早就想写一点东西了,最近终于得空来总结一下这次数模国赛爬取数据的问题。

打比赛的时候先看颠鼓的B题,看的我们一脸懵逼,果断换题。

后面看了C题,觉得机场出租车问题数据可能比较好找,于是开始寻找线索。

我们选择先看看能否获取出租车数量数据(出租车竞争影响等待时间)和机场航班架次数据(影响乘客数量),然后在知乎找到了有网站上贴出了郑州机场的实时出租车进出机场数据,我在第二天脑袋才开窍开始爬出租车数据。

回归正题

出租车数据爬取

网址:郑州机场出租车实时数据

这个的实现很简单的,因为这个网页只有几个字,没有什么结构

在这里插入图片描述

因为网站会显示前半个小时的数据,于是我定为半个小时爬取一次数据,然后我就让程序跑了一天…

#!/usr/bin/env python# encoding: utf-8"""@version: @author: Zengjc@site: http://@file: taxi.py@time: 2019/9/14 16:44"""import requestsimport timefrom pyquery import PyQuery as pqheaders = {'Accept-Encoding': 'gzip, deflate','Accept-Language': 'zh-CN,zh;q=0.8','Upgrade-Insecure-Requests': '1','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 UBrowser/6.2.4098.3 Safari/537.36','Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8','Cache-Control': 'max-age=0','Connection': 'keep-alive',}url = 'http://www.whalebj.com/xzjc/default.aspx'while 1:with open('taxi.txt', 'a')as f: #while time.localtime().tm_min == 30 or time.localtime().tm_min == 00: # while time.localtime().tm_sec == 0:while time.localtime().tm_sec == 0: # 秒为0while time.localtime().tm_min == 30 or time.localtime().tm_min == 0:# 分为 0 15 30 45print(time.localtime().tm_hour, time.localtime().tm_min, time.localtime().tm_sec)response = requests.get(url, headers=headers)response.encoding = 'utf-8'html = response.textdoc = pq(html)box = doc.find('.content_Case') # 匹配有文本的 span 标签string = str(box.text()).replace('\n', '')f.write(string) # 写入文件f.write('\n')print(string)break 机场航班数量爬取

接下来就是机场航班数量

我找了挺久的,没有什么官方渠道去获取航班架次,就只好去携程爬数据了

导入包和headers

#!/usr/bin/env python# encoding: utf-8"""@version: @author: Zengjc@site: http://@readfile: airplane.py@time: 2019/9/14 9:49"""import requestsimport refrom pyquery import PyQuery as pqfrom collections import Counter# headers是在一个网站自动生成的,防止反扒headers = {'authority': 'flights.ctrip.com','cache-control': 'max-age=0','upgrade-insecure-requests': '1','user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36','sec-fetch-mode': 'navigate','sec-fetch-user': '?1','accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3','sec-fetch-site': 'none','accept-encoding': 'gzip, deflate, br','accept-language': 'zh-CN,zh;q=0.9','cookie': '_abtest_userid=0edabc4e-ec22-49c7-a2c2-64cef28c4110; _RF1=106.224.215.171; _RSG=N4aI.8vitx41WkP5W8rKwB; _RDG=2821b70647ca8f2b322ee8343f1c812626; _RGUID=4ef7b392-3e4a-4117-be94-d4880566e801; MKT_Pagesource=PC; gad_city=5f904035b521a7120222cd876d0ea3c5; _bfa=1.1562835846177.790rz.1.1562835846177.1568424671723.2.8; _bfs=1.7; _jzqco=^%^7C^%^7C^%^7C^%^7C^%^7C1.1672377718.1568424673914.1568424736730.1568424744000.1568424736730.1568424744000.0.0.0.11.11; __zpspc=9.1.1568424673.1568424744.11^%^234^%^7C^%^7C^%^7C^%^7C^%^7C^%^23; appFloatCnt=10',![在这里插入图片描述](https://img-blog.csdnimg.cn/20191010202715865.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80Mzg0MTE3Nw==,size_16,color_FFFFFF,t_70)}

第一个网页

在这里插入图片描述

有很多目的地,详细数据要点击

相关推荐: