百度地图实时路况数据-拥堵的生存分析

本文通过Request爬取百度地图的实时路况数据,利用Python进行数据预处理,随后在Spss中进行生存分析,得出路况的生存分析曲线。
摘要由CSDN通过智能技术生成

一、Request爬取数据

1.获取AK
进入【百度地图开放平台】→注册认证成为开发者→【应用管理】→【我的应用】→【创建应用】→获得AK
2.爬虫代码

import requests
import json
import time
import datetime
import csv
import pandas as pd

ak = '你的ak'    #这里ak就不写自己的了
k = 0
def get_one_page(location):
    url_1 = 'http://api.map.baidu.com/traffic/v1/bound?parameters'     #实时路况爬取链接
    url_2 = 'http://api.map.baidu.com/weather/v1/?'                    #实时天气爬取链接
    params_1 = {
                                                          #实时路况输入参数
        'ak': ak,                      #ZDlg1RInQHBCKuq1Uo6ny3InaCQcnljs
        'bounds': location,
        'coord_type_input': 'bd09ll',
        'coord_type_output': 'bd09ll'
    }
    params_2 = {
                                                          #实时天气输入参数
        'ak': 'ZDlg1RInQHBCKuq1Uo6ny3InaCQcnljs',
        'district_id': 610113,  # 雁塔区行政区划编码
        'data_type': 'all',
    }
    try:
        response_1 = requests.get(url_1,params=params_1,timeout=20)                   #实时路况
        response_2 = requests.get(url_2,params=params_2,timeout=20)                  #实时天气
        if response_1.json()['status'] == 0 and response_2.json()['status'] == 0:     #防止请求未成功字段不完整
            return response_1.json(),response_2.json()
        else:
            return None,None
    except requests.ConnectionError as e:
        print('Error', e.args)
##写入CSV文件
#写入表头
'''with open('主干路路况爬取.csv', 'a', newline='') as csvfile:
    fieldnames = ['road_name','road_desc','road_length','localtime', 'week','status', 'status_desc', 'text', 'temp', 'feels_like', 'rh', 'wind_class', 'wind_dir']
    writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
    writer.writeheader()'''
#写入数据
def write_to_file(content):
    with open('主干路路况爬取.csv','a',newline='') as csvfile:
        fieldnames = ['road_name','road_desc','road_length','localtime','week','status','status_desc','text','temp','feels_like','rh','wind_class','wind_dir']
        writer = csv.DictWriter
评论 28
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值