# API_final_project **Repository Path**: Daisy-X/api_final_project ## Basic Information - **Project Name**: API_final_project - **Description**: API期末项目 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2021-01-20 - **Last Updated**: 2025-03-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # API期末项目文档说明 ### (ps:撰写不易,参考请加以说明) __如果产品原型链接打不开请联系我!拜托大家了,谢谢!__ __由于技术问题我实在是找不到如何将代码导入产品原型图里,但是这些项目核心点在python项目里我是运行过的,大家可以前往我的python项目查看,感谢理解!__ [我的python项目链接](http://chenxi06.pythonanywhere.com/) [APP原型链接](https://modao.cc/app/ff5a145461cb7c47f9b0d02682d9c50af4ea8f71?simulator_type=device&sticky#screen=skk2pp3m1qtr4cz) ## 项目名称:嗨GO APP | 产品名称 | 嗨GO | | ---- | ---- | | 产品功能 | 一款为用户提供天气情况、周边搜索、路径规划的APP,帮助用户更好地规划出行。 | | 作者 | 陈希 | ## 迭代的增量说明: - 添加了价值主张画布、用户画像、用户体验旅程图 - 价值主张宣言、问题表述与需求概述 - 添加了利害关系者分析 - 添加了APP结构流程图与心得总结及感谢 - 新建了APP原型设计图文件夹 - 添加了智能API使用成果(代码+运行结果截图) - 添加了用户流程图、数据流程图及产品的“三性”分析 - 添加了不同API平台对比 - 上传20*20秒投影片 *** ## 一、MVP加/价值主张宣言 ### (一)加值宣言 **嗨GO APP——让你的出行更加愉快!** 什么?今年冬天连广东都下雪了?是的,待在从化大山里的我亲眼见到了“冰晶下坠”,前一天我还穿着短袖,今天的我就穿上了羽绒服在风中瑟瑟发抖。广州的天气就是这样忽冷忽热,此时的你正需要一款天气查询的APP,看好天气预报,穿对衣服才能让新的一天更加愉快美好。什么?你说广州也就那几家店的东西比较好吃,那是有很多“宝藏店铺”等着你去发现!嗨GO APP不仅能够查询天气还可以搜索周边,**这样一款APP,你值得拥有!** ### (二)核心价值(最小的可行性产品) **天气查询**:用户通过输入地点可看到今日的天气以及未来3天的天气预报 **周边搜索**:用户通过输入地点、关键词即可查看周边信息 **路径规划**:用户通过输入起始点、目的地可返回乘车方案 ### (三)人工智能概率性考量 - 在当今网络信息发展迅速的时代,人工智能的出现正逐步融入我们的生活,影响着我们生活中的方方面面,主要体现在自然科学、经济、社会方面。 [AI对人类生活的影响](https://baike.so.com/doc/2952526-3114987.html#2952526-3114987-6_11) (1)人工智能对自然科学的影响。在需要使用数学计算机工具解决问题的学科,AI带来的帮助不言而喻。更重要的是,AI反过来有助于人类最终认识自身智能的形成。 (2)人工智能对经济的影响。专家系统更深入各行各业,带来巨大的宏观效益。AI也促进了计算机工业网络工业的发展。但同时,也带来了劳务就业问题。由于AI在科技和工程中的应用,能够代替人类进行各种技术工作和脑力劳动,会造成社会结构的剧烈变化。 (3)人工智能对社会的影响。AI也为人类文化生活提供了新的模式。现有的游戏将逐步发展为更高智能的交互式文化娱乐手段,今天,游戏中的人工智能应用已经深入到各大游戏制造商的开发中。 - 人类需求同时也是推进人工智能发展的重要因素之一,而任何的产品、技术、企业都是以人为本,迎合用户需求才得以蓬勃发展。该项目则是以人们的需求为基点出发,利用高德天气API、高德路径规划API以及高德周边搜索POI API,旨在解决用户出行烦恼。与此同时,天气预测、路径规划、周边搜索都是当下以及未来发展的热门项目。 ### (四)问题及解决方案说明(融合人工智能概率性考量) ## 二、问题需求 ### (一)用户画像及使用场景 ### **价值主张画布**: ![](https://gitee.com/Daisy-X/api_final_project/raw/master/pictures/%E4%BB%B7%E5%80%BC%E4%B8%BB%E5%BC%A0%E7%94%BB%E5%B8%83.jpg) ### **用户画像及使用场景**: ![](https://gitee.com/Daisy-X/api_final_project/raw/master/pictures/%E7%94%A8%E6%88%B7%E7%94%BB%E5%83%8F1api.jpg) ![](https://gitee.com/Daisy-X/api_final_project/raw/master/pictures/%E7%94%A8%E6%88%B7%E7%94%BB%E5%83%8F2api.jpg) ![](https://gitee.com/Daisy-X/api_final_project/raw/master/pictures/%E7%94%A8%E6%88%B7%E7%94%BB%E5%83%8F3api.jpg) ### (二)需求列表与人工智能API加值 | 优先级 | 用户需求 | 人工智能API加值 | 级别 | | --- | --- | ---| --- | | 1 | 天气查询 | 高德天气API,用户输入城市/地区名即返回相关天气、未来3天天气预报 | 重要 | | 2 | 周边搜索 | 高德搜索POI API,用户输入结构化地址以及关键词即返回周边信息 | 重要 | | 3 | 路径规划 | 高德路径规划-公交API,用户输入起始点和目的地的结构化地址即返回乘车方案 | 次重要 | ### (三)需求论证展示利害相关者分析 | 厉害关系者 | 行为 | 获取利益 | | --- | --- | --- | | 产品经理 | 市场调研了解市场与项目的可行性、根据用户需求分析用户痛点、确定产品价值主张、撰写PDR文档、优化/迭代产品功能 | 高 | | UI界面设计师 | 根据产品风格、用户需求设计优美的APP界面 | 中 | | API平台(高德) | 提供API开发文档、技术与数据 | 高 | | 用户 | 使用APP,查询天气、搜索周边、查找乘车方案;为产品的优化提供数据 | 高 | ## 三、解决方案:界面流程及关键智能交互 ### (一)用户体验旅程 ![](https://gitee.com/Daisy-X/api_final_project/raw/master/pictures/%E7%94%A8%E6%88%B7%E4%BD%93%E9%AA%8C%E6%97%85%E7%A8%8B%E5%9B%BE.jpg) ### (二)APP交互界面设计 ### 嗨GO APP界面流程图: ![](https://gitee.com/Daisy-X/api_final_project/raw/master/pictures/%E5%97%A8GO%20APP%E7%BB%93%E6%9E%84%E6%B5%81%E7%A8%8B%E5%9B%BE.jpg) [APP原型链接](https://modao.cc/app/ff5a145461cb7c47f9b0d02682d9c50af4ea8f71?simulator_type=device&sticky#screen=skk2pp3m1qtr4cz) [APP原型各界面截图](https://gitee.com/Daisy-X/api_final_project/tree/master/APP%E5%8E%9F%E5%9E%8B%E5%9B%BE) 此APP核心功能皆调用了API: - 天气查询:高德天气查询API - 周边搜索:高德搜索POI API - 乘车规划:高德路径规划——公交API #### 用户可欲性 本产品界面简洁优美、风格统一,且将天气查询、周边搜索、路径规划_乘车方案集为一体,让用户出行更有规划,让用户出行更加省心愉快,满足了用户的出行需求,返回结果高效清晰,吸引用户。 #### 设计的技术可行性 本产品数据结果皆由高德API开放平台调用所得,有平台技术保障,让用户用得放心! - 数据的准确性 - 数据的可信度 - 数据返回的快捷性 #### 设计的商业可行性 - 后台获取用户输入的信息后可进行一系列的分析:如根据用户输入的路径规划、周边查找地点分析可得知热门城市/旅游景点有哪些;根据用户输入的周边搜索关键词分析可得知有哪些热门服务、潜在价值服务,商家可根据这点进行服务加值,产品在未来迭代中也可加入智能推荐这一功能为产品加值。 - 市场需求较大,出行规划是人们生活永恒不变的话题。 ## 四、解决方案:数据流程及关键智能API使用 ### (一)流程图 ### 1. 用户流程图: ![](https://gitee.com/Daisy-X/api_final_project/raw/master/pictures/%E7%94%A8%E6%88%B7%E6%B5%81%E7%A8%8B%E5%9B%BE.jpg) ### 2. 数据流程图: ![](https://gitee.com/Daisy-X/api_final_project/raw/master/pictures/%E6%95%B0%E6%8D%AE%E6%B5%81%E7%A8%8B%E5%9B%BE.jpg) #### 用户可欲性 每个人出行前都会想要知道当天以及未来几天的天气情况以及当地周边相关的服务,而当今公交地铁也在人们的交通出行方面占了很大一部分。本产品将天气查询、周边搜索、路径规划_乘车方案集为一体,让用户出行更有规划,让用户出行更加省心愉快! #### 设计的技术可行性 本产品数据结果皆由高德API开放平台调用所得,有平台技术保障,让用户用得放心! #### 设计的商业可行性 后台获取用户输入的信息后可进行一系列的分析:如根据用户输入的路径规划、周边查找地点分析可得知热门城市/旅游景点有哪些;根据用户输入的周边搜索关键词分析可得知有哪些热门服务、潜在价值服务,商家可根据这点进行服务加值,产品在未来迭代中也可加入智能推荐这一功能为产品加值。 ### (二)智能API使用成果 API调用准备工作: 获取key值,明确url,导入模块: ``` import requests,json import pandas as pd chen_key = 'd2fd2a534f9fe0c5f1b7d4cc7c2b11cb' ``` 若已将API调用函数封装,也可以导入相应模块 1. 天气查询 ``` def weather(city): """ 天气查询是一个简单的HTTP接口,根据用户输入的adcode,查询目标区域当前/未来的天气情况。 在weather函数中,key是指高德API的密钥,请先去注册; 其中,参数city为城市编码,输入城市的adcode,adcode信息可参考城市编码表https://lbs.amap.com/api/webservice/download; extensions为气象类型,可选值:base/all base:返回实况天气 all:返回预报天气 """ url = 'https://restapi.amap.com/v3/weather/weatherInfo?parameters' params = { 'key':chen_key, 'city':city, 'extensions' : 'all', 'output':'json' } r = requests.get(url,params) results = r.json() return results ``` ``` # 输入参数city为'北京' a=weather('北京') ``` ``` # 将近四天的天气预报结果表格化 casts = a['forecasts'][0]['casts'] pd.json_normalize(casts) ``` 运行结果如下: ![](https://gitee.com/Daisy-X/api_final_project/raw/master/pictures/%E5%A4%A9%E6%B0%94api%E8%A1%A8%E6%A0%BC%E5%8C%96%E7%BB%93%E6%9E%9C%E6%95%B0%E6%8D%AE.jpg) ``` # 创建空列表,遍历近四天天气预报的结果,将等于'date','daytemp','nighttemp'的值分别添加进相对应的列表中 date=[] for i in a['forecasts'][0]['casts']: date.append(i['date']) daytemp=[] for i in a['forecasts'][0]['casts']: daytemp.append(i['daytemp']) nighttemp=[] for i in a['forecasts'][0]['casts']: nighttemp.append(i['nighttemp']) ``` ``` # 利用pyecharts绘制近四天昼夜温度变化的折线图,代码可见pyecharts官网 这部分代码太长了,我就不复制在这边了,官网都有模板可以套用的。 ``` [pyecharts官网](https://pyecharts.org/#/) ### 利用以上数据我绘制出的图表如下: ![](https://gitee.com/Daisy-X/api_final_project/raw/master/pictures/%E7%94%A8pyecharts%E7%BB%98%E5%88%B6%E7%9A%84%E6%8A%98%E7%BA%BF%E5%9B%BE.jpg) 2. 周边搜索 ``` def around(location,keywords): """ around函数用于周边搜索:在用户传入经纬度坐标点附近,在设定的范围内,按照关键字或POI类型搜索 在around函数中,key是指高德API的密钥,请先去注册; location为搜索周边的地点参数值必须为结构化地址的经纬度,获取经纬度请调用geo模块中的函数geocode; keywords为搜索的关键词 """ url = 'https://restapi.amap.com/v3/place/around?parameters ' params = { 'key':chen_key, 'location':location, 'keywords':keywords, #'types':'050000', 'output':'json', 'extensions':'base' } r = requests.get(url,params=params) results = r.json()['pois'] return results ``` ``` # 输入参数location = '广东省广州市从化区温泉镇中山大学南方学院'、keywords = '饭店' !!!注意!!!这里的location必须是结构化地址且须先将地址地理编码,所以还需用到地理编码API ``` ``` # 地理编码API如下: def geocode(address)-> str: # geocode(高德API_key,结构化地址) """获取高德API的地理编码 注释:key是指高德API的密钥,请先去注册 address是指结构化地址,具体请查看: """ # 函数注释 url = 'https://restapi.amap.com/v3/geocode/geo?parameters' params = { 'key':'d2fd2a534f9fe0c5f1b7d4cc7c2b11cb', 'address':address } r = requests.get(url,params=params) results = r.json()['geocodes'][0]['location'] # 返回值 return results ``` ``` # 正式开始 # 调用geocode函数获取地址的经纬度 a = geocode('广东省广州市从化区温泉镇中山大学南方学院') # 调用around函数获取周边相关信息 b = around(a,'饭店') b ``` 3. 路径规划_公交 ``` def integrated(origin,destination,city): """ transit函数用于规划综合各类公共(火车、公交、地铁)交通方式的通勤方案,并且返回通勤方案的数据。 在transit函数的参数中,key是指高德API的密钥,请先去注册; orgin为出发点,destination为目的地,这两个参数值必须为结构化地址的经纬度,获取经纬度请调用geo模块中的函数geocode; city可选值有城市名称/citycode;cityd为跨城公交规划必填参数,可选值有城市名称/citycode; strategy为公交换乘策略,其中可选值: 0:最快捷模式 1:最经济模式 2:最少换乘模式 3:最少步行模式 5:不乘地铁模式 nightflag为是否计算夜班车,其中可选值:0:不计算夜班车,1:计算夜班车 """ url = 'https://restapi.amap.com/v3/direction/transit/integrated?parameters' params = { 'key':chen_key, 'origin':origin, 'destination':destination, 'city':city, 'output':'json' } r = requests.get(url,params=params) results = r.json()['route']['transits'][0]['segments'] return results ``` ``` # 输入的参数'origin'和'destination'必须是结构化地址相对应的地理编码,因此还应先调用地理编码API # 令'origin'为广东省广州市中山大学南方学院,'destination'为广东省广州市广州航海学院 # 获取'origin'和'destination'相对应的地理编码,调用以上的geocode函数 a = geocode('广东省广州市中山大学南方学院') b = geocode('广东省广州市广州航海学院') # 调用以上integrated函数,获取乘车方案 c = integrated(a,b,'广东省广州市') c ``` 运行结果如下: ![](https://gitee.com/Daisy-X/api_final_project/raw/master/pictures/%E5%85%AC%E4%BA%A4%E6%96%B9%E6%A1%881.jpg) ![](https://gitee.com/Daisy-X/api_final_project/raw/master/pictures/%E5%85%AC%E4%BA%A4%E6%96%B9%E6%A1%882.jpg) ### (三)不同平台API的比较:高德与和风天气 1. [高德天气查询API文档](https://lbs.amap.com/api/webservice/guide/api/weatherinfo) [和风天气API文档](https://dev.qweather.com/docs/api/) 2. 优势对比: - 和风天气平台是专业的天气预测平台,不仅预测的天气数值种类多、预测的时间范围类型也多,而且面向对象是全球性的支持全球31种语言 - 而高德天气查询返回的天气数值种类较少,只能预测未来三天的天气情况,但因技术问题调用和风天气API始终不成功,因此使用了高德天气查询API 3. 价格对比: 高德: ![](https://gitee.com/Daisy-X/api_final_project/raw/master/pictures/%E9%AB%98%E5%BE%B7API%E6%B5%81%E9%87%8F%E9%99%90%E5%88%B6.jpg) 和风天气: ![](https://gitee.com/Daisy-X/api_final_project/raw/master/pictures/%E5%92%8C%E9%A3%8E%E5%A4%A9%E6%B0%94API%E6%B5%81%E9%87%8F%E9%99%90%E5%88%B6.jpg) ### (四)人工智能概率性考量 相关文章: [ai人工智能存在概率问题,盲目的夸张倾向于得分是不可取的](https://www.sohu.com/a/288817469_100092059) [可信成为人工智能发展重要考量](http://www.legaldaily.com.cn/index_article/content/2019-12/11/content_8071951.htm) - 平台的优势——为什么选择高德API开放平台? 1. 市场优势:海量的数据处理能力,高德日均处理定位及路径规划请求上千亿次;高德开放平台每月为超过12亿移动设备提供位置服务;高德开放平台累计为超过30万的移动应用提供位置服务。 2. 数据优势:快速性、覆盖性、安全性、可信性 3. 服务优势:精简的文档说明、具有场景示例 ## 心得总结及感谢 ### 心得总结: - 本次项目实践综合考察了API功能调用、界面设计与商业模式价值主张的课程知识。初次撰写PDR文档的确存在许多困惑,许多专业术语的运用还不够熟练,还需多加实践练习。 - 通过几次产品项目实践,我深感价值主张与用户痛点分析的重要性,了解用户需求、明确产品定位是开发产品的第一步,而用户数据的收集、分析则是优化产品功能的基础。本次项目的实践较完整地完成了产品开发的过程,同时我也逐步了解到了产品开发的流程与不同方面关注度的重要层级。 - 打好基础,扎实地做好每一步才是硬道理。时间飞逝,回望本学期,每晚熬夜的痛苦还历历在目,但与此同时我也收获了不少知识——从最开始根本不知道API是什么到现在拥有了能够阅读不同API文档的能力,以及能够对此加以应用;从一开始连文字层级都搞混淆到现在可以独立完整地设计出一个不错的APP高保真原型图;从一开始分不清价值主张中的种种概念到现在可以清晰地确定思考问题的方向……我为此感到十分的自豪! ### 五、感谢: - 本次文档的撰写参考了优秀学姐丁晓莹的作品,为此我放上学姐的作品链接以表示感谢,以后也将向优秀的学长学姐们多多学习。 [丁晓莹学姐的优秀作品](https://gitee.com/hiuying/api/blob/master/%E4%B8%AA%E4%BA%BA%E9%A1%B9%E7%9B%AEPRD.md) - 感谢高德平台开放的API文档: [高德天气查询API](https://lbs.amap.com/api/webservice/guide/api/weatherinfo) [高德路径规划_公交API](https://lbs.amap.com/api/webservice/guide/api/direction#bus) [高德搜索POI API](https://lbs.amap.com/api/webservice/guide/api/search) - 感谢“墨刀”在线产品原型设计与协作平台为我的APP原型设计提供了技术平台 [墨刀在线产品原型设计与协作平台](https://modao.cc/) - 感谢iconfont-阿里巴巴矢量图库所提供的的海量图标,推进了原型设计的进度 [iconfont-阿里巴巴矢量图库](https://www.iconfont.cn/illustrations/index?spm=a313x.7781069.1998910419.3) - 感谢许志超老师的辛勤教学,为本次项目实践提供了方向与实践的基础。 #### (ps:本文档有12个有效外链url)