2019全国数学建模大赛c题出租车机场数据(二)

想直接要数据的戳

https://blog.csdn.net/qq1225598165/article/details/102989657

题目

问题C 机场的出租车问题
大多数乘客下飞机后要去市区(或周边)的目的地,出租车是主要的交通工具之一。国
内多数机场都是将送客(出发)与接客(到达)通道分开的。送客到机场的出租车司机都将
会面临两个选择:
(A) 前往到达区排队等待载客返回市区。出租车必须到指定的“蓄车池”排队等候,依
“先来后到”排队进场载客,等待时间长短取决于排队出租车和乘客的数量多少,需要付出
一定的时间成本。
(B) 直接放空返回市区拉客。出租车司机会付出空载费用和可能损失潜在的载客收益。
在某时间段抵达的航班数量和“蓄车池”里已有的车辆数是司机可观测到的确定信息。
通常司机的决策与其个人的经验判断有关,比如在某个季节与某时间段抵达航班的多少和可
能乘客数量的多寡等。如果乘客在下飞机后想“打车”,就要到指定的“乘车区”排队,按
先后顺序乘车。机场出租车管理人员负责“分批定量”放行出租车进入“乘车区”,同时安
排一定数量的乘客上车。在实际中,还有很多影响出租车司机决策的确定和不确定因素,其
关联关系各异,影响效果也不尽相同。
请你们团队结合实际情况,建立数学模型研究下列问题:
(1) 分析研究与出租车司机决策相关因素的影响机理,综合考虑机场乘客数量的变化规
律和出租车司机的收益,建立出租车司机选择决策模型,并给出司机的选择策略。
(2) 收集国内某一机场及其所在城市出租车的相关数据,给出该机场出租车司机的选择
方案,并分析模型的合理性和对相关因素的依赖性。
(3) 在某些时候,经常会出现出租车排队载客和乘客排队乘车的情况。某机场“乘车区”
现有两条并行车道,管理部门应如何设置“上车点”,并合理安排出租车和乘客,在保证车
辆和乘客安全的条件下,使得总的乘车效率最高。
(4) 机场的出租车载客收益与载客的行驶里程有关,乘客的目的地有远有近,出租车司
机不能选择乘客和拒载,但允许出租车多次往返载客。管理部门拟对某些短途载客再次返回
的出租车给予一定的“优先权”,使得这些出租车的收益尽量均衡,试给出一个可行的“优
先”安排方案。

数据获得(不想自己爬的可以直接跳到最后下载)

首先,访问郑州机场网址,点击链接
这个网站是实时刷新的
在这里插入图片描述
写一个python的小爬虫,将数据爬下来并且保存:

import requests
import time
from bs4 import BeautifulSoup
import re
class Tool:
    removeImg = re.compile('<img.*?>| {7}|')
    removeAddr = re.compile('<a.*?>|</a>')
    replaceLine = re.compile('<tr>|<div>|</div>|</p>')
    replaceTD= re.compile('<td>')
    replacePara = re.compile('<p.*?>')
    replaceBR = re.compile('<br><br>|<br>')
    removeExtraTag = re.compile('<.*?>')

    def replace(self,x):
        x = re.sub(self.removeImg,"",x)
        x = re.sub(self.removeAddr,"",x)
        x = re.sub(self.replaceLine,"\n",x)
        x = re.sub(self.replaceTD,"\t",x)
        x = re.sub(self.replacePara,"\n    ",x)
        x = re.sub(self.replaceBR,"\n",x)
        x = re.sub(self.removeExtraTag,"",x)
        return x.strip()

tool=Tool()





# 请求的首部信息
headers = {
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.146 Safari/537.36'
}
# 例子的url
url = 'http://www.whalebj.com/xzjc/default.aspx?tdsourcetag=s_pctim_aiomsg'
# 利用requests对象的get方法,对指定的url发起请求
# 该方法会返回一个Response对象
for i in range(0,2000):
    res = requests.get(url, headers=headers)
    soup = BeautifulSoup(res.text, 'lxml')
    tags = soup.find_all('span', {'class': 'content_Case'})
    e = tags.__str__()
    f = tool.replace(e)
    g = f[1:len(f)-1]
    g = g+"\n"
    print(g)
    with open('data.txt', 'a',encoding='utf-8') as f:
        f.write(g)
    print("第",i)
    time.sleep(60)

运行就可以爬到数据了,下面有我已经爬到的数据
在这里插入图片描述
不想爬的同学可以下载我已经爬取好的数据:
百度云链接:
链接:https://pan.baidu.com/s/1o755xoeq7nVuCGu9r70uPA
提取码:xamx

有用的话,记得关注我的微信公众号CodingFish,分享更多思路
在这里插入图片描述

发布了23 篇原创文章 · 获赞 9 · 访问量 4198

猜你喜欢

转载自blog.csdn.net/qq1225598165/article/details/102989657