組長博客
一、組員職責分工
組員 | 分工 |
---|---|
鄧澤源 | 后端 |
姚彬錕 | 后端 |
張慶焰 | 前端 |
周鑫煌 | UI原型圖 |
陳展鴻 | 后端 |
陳觀鴻 | 前端 |
吳潔敏 | 博客 |
朱宏 | 爬數據 |
二、github 的提交日志截圖(鼓勵小粒度提交)
三、程序運行截圖
- 高德API
- 美團
- 美團之美食與商戶評價
- 商圈信息爬取(JSON格式)
四、程序運行環境
- 用戶要求:Android 5.0以上版本
- UI設計:墨刀
- 前端要求:Android 5.0+
- 后端要求:windows 10 python 3.7
五、GUI界面



六、基礎功能實現
1.能將店鋪的名稱、綜合評分、詳細地址、聯系電話、營業時間、許可證、經緯度、平均消費、所屬品牌、相冊爬取下來
2.前端能將信息進行展示
3.測評出福州最受歡迎的商圈(參考人氣)
4.分別測評出福州人均消費50以下,50-100、100-200、200以上最佳(性價比最高)的前五家美食餐廳(參考評價與價格)
5.測評出福州最佳美食聚集地
6.測評出福州服飾類綜合評分最高的商圈
7.基本數據可視化
8.UI界面
七、鼓勵有想法且有用的功能
1.增加玩樂的商圈
2.增加對娛樂的地方的排行榜
3.自動排序綜合性價比高的餐廳,並且會把招牌菜列出來
4.給一個對比的功能,兩家類似口味的餐廳根據菜品和評價做對比
八、遇到的困難及解決方法
林睿(組長)
困難:技術不夠所以三個小時沒幫上什么忙,只能幫后端找找數據當個人工智能
解決方法:努力學習技術,爭取在編程上幫忙
鄧澤源
1、
困難:美團、大眾的爬蟲爬取會隨着訪問次數上升而封IP
解決方法使用代理池或者“人工智能”多開分身術
PS:反應過來被封的時候太遲了,裂開
2、
困難:高德API使用爬取JSON文件在Python中與前端有着格式交互問題
解決方法:將JSON文件轉化成為DICT再進行抓分處理
3、
困難:高德地圖中沒有商圈
解決方法:獲取美團中的商圈坐標信息與半徑經緯度,在高德地圖API中進行點坐標半徑搜索,加權算法處理最終商圈評分
張慶焰
困難:高德地圖sdk在虛擬機上無法正常運行,初始化的時候閃退
解決:導入x64運行庫
姚彬錕
困難:爬蟲ip失效
解決:分多個ip爬取,最后將數據整個到一起
朱宏
困難:網頁爬多了IP會被封
解決方法:用ip代理頻繁更換接着爬
蔡雅菁
困難:技術短板,所以三小時極限編程基本上幫不上什么忙,只能當個planB“人工智能”,555
解決方法:通過努力自學盡快提高編程能力
吳潔敏
困難:技術不夠,只能當個人工智能和寫寫博客混混分這樣子
解決方法:繼續努力
周鑫煌
困難:所提出的需求點評api幾乎都用不了,說好的調接口變成自己爬數據,加上前端編寫跟后端部署,為了實現更好的完成度,三個多小時工作量變得略大,時間上來不及。
解決方法:去掉了一些原本希望實現的騷功能,在ui設計上從開發的角度出發,盡量做的最簡化且最容易實現又不失美觀。
王景弘
困難:技術力不夠只能在旁邊幫幫忙
解決方法:在前端旁邊一邊做一邊學
陳展鴻
困難:跑到另外一個教室閉關鎖國
解決方法:對外開放
陳觀鴻
困難:時間比較少,對於安卓的使用也不夠熟練,速度太慢了
解決方法:只能之后好好讀了,抱住大佬大腿
九、馬后炮
- 林睿(組長):如果前期做足准備和分工,早點能准備好先學習一些技術,那么或許能幫點忙
- 鄧澤源:如果早知道今天要裂開,那么我昨晚就好好學習
- 張慶焰: 如果不上福大,那么就不會碰到柯逍
- 姚彬錕:如果我沒有選計算機,那么我就不用學軟件工程
- 朱宏:如果不用爬蟲 ,那么就不會被封ip,那么就不會浪費時間用代理
- 蔡雅菁:如果給我一次重來的機會,那么我一定要從大一就開始好好學習好好做人
- 吳潔敏:如果能回到大一,那么我一定好好努力555
- 周鑫煌:如果我擅長的是安卓,那么就可以幫慶焰男神多分擔一些開發上的壓力了
- 王景弘:如果隊友早點確定爬取數據的方法,那么我們就不用手動記錄二十多頁的餐廳ID了
- 陳展鴻:如果早知道三個小時一定要做完,那么就前一天晚上提早做准備
- 陳觀鴻:如果我能提前掌握好安卓的控件,加快代碼速度,那么我們就會做的更快
十、評估每位組員的貢獻比例
組員 | 貢獻比 |
---|---|
張慶焰 | 44 |
鄧澤源 | 17 |
周鑫煌 | 12 |
陳展鴻 | 11 |
姚彬錕 | 6 |
陳觀鴻 | 5 |
吳潔敏 | 3 |
朱宏 | 2 |
十一、PSP表格(個人)
PSP2.1 | Personal Software Process Stages | 預估耗時 (小時) |
實際耗時 (小時) |
---|---|---|---|
Planning | 計划 | 1 | 1 |
· Estimate | · 估計這個任務需要多少時間 | 3 | 3 |
Development | 開發 | 2 | 2 |
· Analysis | · 需求分析 (包括學習新技術) | 1 | 1 |
· Design | · 生成設計文檔 | 1 | 1 |
· Design Review | · 設計復審 | 0.2 | 0.3 |
· Coding Standard | · 代碼規范 (為目前的開發制定或選擇合適的規范) | 0 | 0 |
· Design | · 具體設計 | 1 | 1.5 |
· Coding | · 具體編碼 | 0 | 0 |
· Code Review | · 代碼復審 | 0 | 0 |
· Test | · 測試(自我測試,修改代碼,提交修改) | 0 | 0 |
Reporting | 報告 | 0 | 0 |
· Test Report | · 測試報告 | 0 | 0 |
· Size Measurement | · 計算工作量 | 0.1 | 0.1 |
· Postmortem & Process Improvement Plan | · 事后總結, 並提出改進計划 | 0.5 | 0.5 |
· 合計 | 6.8 | 6.9 |
十二、學習進度表(個人)
第N周 | 新增代碼(行) | 累計代碼(行) | 本周學習耗時(小時) | 累計學習耗時(小時) | 重要成長 |
---|---|---|---|---|---|
1 | 0 | 0 | 12 | 12 | 基本了解了原型圖的設計理念與實現方法,掌握了墨刀的基礎用法 |
2 | 412 | 412 | 20 | 32 | 構思算法,實現基本框架 |
3 | 660 | 1072 | 36 | 68 | 算法改進 |
4 | 148 | 1220 | 15 | 83 | 了解接口的使用,學習了github使用規范 |
5 | 0 | 1220 | 15 | 98 | 明確了團隊項目選題 |
6 | 0 | 1220 | 15 | 113 | 明確了團隊項目需求 |
7 | 0 | 1220 | 3 | 118 | 幫忙找了需要的數據,之后要努力學習技術 |