当前位置: 首页> 财经> 股票 > 广东自助建站网站_室内空间设计网站推荐_关键词优化如何_nba最新交易汇总实时更新

广东自助建站网站_室内空间设计网站推荐_关键词优化如何_nba最新交易汇总实时更新

时间:2025/9/4 20:56:39来源:https://blog.csdn.net/weixin_45812624/article/details/145497856 浏览次数:0次
广东自助建站网站_室内空间设计网站推荐_关键词优化如何_nba最新交易汇总实时更新

在新能源汽车快速发展的今天,充电桩的分布和可用性成为了影响用户体验的关键因素之一。比亚迪作为全球领先的新能源汽车制造商,不仅在车辆制造方面取得了卓越成就,也在充电基础设施建设上投入了大量资源。为了帮助用户更方便地找到比亚迪充电桩的位置,本篇文章,我们将探究POST请求的实际应用,我们使用Python的requests库通过POST请求,从比亚迪官方获取充电桩位置信息,深入讲解如何构造请求、解析响应数据以及实现数据可视化,通过可视化分析来实现比亚迪的充电桩分布情况,by the way,比亚迪的充电桩通常是由第三方合作品牌运营的,但它们都接入了比亚迪的充电网络,确保用户可以方便地使用这些充电桩进行充电。

比亚迪充电桩分布位置信息:充电站

我们第一步先找到门店数据的存储位置,然后看3个关键部分标头、负载、 预览;

标头:通常包括URL的连接,也就是目标资源的位置;

负载:对于GET请求:负载通常包含了传递的参数,有些网页负载可能为空,或者没有负载,因为所有参数都通过URL传递;

预览:指的是对响应内容的快速查看或摘要显示,可以帮助用户快速了解返回的数据结构或内容片段;

接下来就是数据获取部分,先理解原理,完整的查询方式是通过定位坐标点查询周边5公里左右范围内接入比亚迪的充电桩的位置信息,比亚迪使用的充电桩通常也是与第三方运营商合作的品牌;

先讲一下方法思路,一共三个步骤;

方法思路

  1. 获取原始坐标点并在周边生成新的等距离点,生成层数可自定义;
  2. 基于去重后的新生成点进行查询,并保留查询得到的充电桩信息;
  3. 坐标转换,GCJ-02转WGS84;

第一步:获取原始坐标点并在周边生成新的等距离点;

第二步:基于去重后的新生成点进行查询,并保留查询得到的充电桩信息;

完整代码#运行环境 Python 3.11

import requests
import json
import pandas as pd
import math
import time
import randomdef calculate_new_coordinates(lat, lng, distance_km, layers):"""计算新的经纬度坐标"""coordinates = set()  # 使用集合来存储唯一坐标# 计算每层的纬度和经度变化for layer in range(layers):lat_change = (layer + 1) * distance_km / 111.32  # 当前层纬度变化lng_change = (layer + 1) * distance_km / (111.32 * math.cos(math.radians(lat)))  # 当前层经度变化# 生成当前层的四个基本点(上下左右)current_points = [(lat + lat_change, lng),  # 北(lat - lat_change, lng),  # 南(lat, lng + lng_change),  # 东(lat, lng - lng_change)  # 西]# 将当前层的点添加到集合中for point in current_points:coordinates.add(point)# 对每个新生成的点,再生成四个点(上下左右)for point in current_points:new_lat, new_lng = pointcoordinates.add((new_lat + lat_change, new_lng))  # 北coordinates.add((new_lat - lat_change, new_lng))  # 南coordinates.add((new_lat, new_lng + lng_change))  # 东coordinates.add((new_lat, new_lng - lng_change))  # 西return list(coordinates)  # 转换为列表返回def search_charge_stations(lat, lng):url = "https://site-api.byd.com/domestic-official-api/charge/stations/search"# 请求头headers = {----------根据你实际的请求头内容进行替换------------}# 请求体数据payload = {"lat": lat,"lng": lng,"keyword": "",  # 关键词,可以根据需要填写"pageNum": 1,  # 页码"pageSize": 500  # 每页大小}# 发送 POST 请求response = requests.post(url, headers=headers, data=json.dumps(payload))# 检查响应状态if response.status_code == 200:# 处理成功的响应data = response.json()print("查询成功,返回数据:", json.dumps(data, indent=4, ensure_ascii=False))# 提取充电站信息stations = data['data']['rows']return stations if stations else []  # 如果没有找到充电站,返回空列表else:# 处理错误响应print(f"请求失败,状态码: {response.status_code}, 响应内容: {response.text}")return []  # 确保返回空列表而不是 Noneif __name__ == "__main__":original_lat = 31.328357  # 原始纬度original_lng = 121.498223  # 原始经度distance_km = 5  # 查询半径 5 公里layers = 3  # 生成点的层数# 计算新的坐标new_coordinates = calculate_new_coordinates(original_lat, original_lng, distance_km, layers)all_stations = []  # 用于存储所有充电站信息# 查询每个新坐标的充电站信息for lat, lng in new_coordinates:stations = search_charge_stations(lat, lng)# 如果查询结果不为空,则添加到总列表if stations:all_stations.extend(stations)  # 将当前坐标的充电站信息添加到总列表else:print(f"坐标 ({lat}, {lng}) 未找到充电站信息,跳过。")# 随机延时,范围在 1 到 3 秒之间time.sleep(random.uniform(1, 3))# 将所有充电站信息转换为 DataFramedf = pd.DataFrame(all_stations)# 保存为 CSV 文件output_csv_path = 'D:\\data\\charge_stations.csv'  # 输出文件路径df.to_csv(output_csv_path, index=False, encoding='utf-8-sig')print(f"充电站数据已成功保存为 {output_csv_path}")

这里我们基于上海的一个原始定位点,获取周边一些充电桩位置信息,获取数据标签如下,id(充电站的唯一标识符)、stationName(充电站的名称)、operatorId(运营商的唯一标识符)、operatorName(运营商的名称)、address(充电站的地址)、stationLng(充电站的经度)、stationLat(充电站的纬度)、distance(从查询点到充电站的距离(单位:公里))、currentPeriodElectricityFee(当前时段的电费(单位:元/度))、currentPeriodServiceFee(当前时段的服务费(单位:元))、dcConnectorCount(直流充电接口的数量)、 acConnectorCount(交流充电接口的数量)、dcIdleConnectorCount(当前空闲的直流充电接口数量)、 acIdleConnectorCount(当前空闲的交流充电接口数量) 、electricityFeeStr(电费的详细时间段和费用信息)、serviceFeeStr(服务费的详细时间段和费用信息)、tag(充电站的标签(如“快”表示快充站));

第三步:坐标系转换,由于数据使用的是高德坐标系(GCJ-02),为了在ArcGIS上准确展示而不发生偏移,我们需要将充电桩的坐标从GCJ-02转换为WGS-84坐标系。我们可以利用coord-convert库中的gcj2wgs(lng, lat)函数,对CSV文件中的充电桩坐标列进行转换。完成坐标转换后,再将数据导入ArcGIS进行可视化;

文章仅用于分享个人学习成果与个人存档之用,分享知识,如有侵权,请联系作者进行删除。所有信息均基于作者的个人理解和经验,不代表任何官方立场或权威解读。

关键字:广东自助建站网站_室内空间设计网站推荐_关键词优化如何_nba最新交易汇总实时更新

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: