想直接要数据的戳
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,分享更多思路