mentorship-program
mentorship-program copied to clipboard
[Week31] Max
今天討論了什麼?結論是什麼?
上週 week 31 完成進度:
- [x] 協程(Coroutines) 【Python教學】淺談 Coroutine 協程使用方法
本週 week 32 預期完成進度:
繼續整理爬蟲的文章
- [ ] Async IO Design Patterns
- Chaining Coroutines
- Using a Queue
- [ ] 改寫 Python 之父寫的 asyncio Coroutines 全站爬蟲 (因為他用的方法是 Python 3.4版本,目前有些寫法會在未來 Python 3.1.0 被移除) A Web Crawler With asyncio Coroutines
支線任務 - 待辦清單:
測試爬蟲差異,整理成文章:
- [x] 多執行緒(Multi-threading)
- [x] 多處理程序(Multi-processing)
- [x] 多處理程序池(Multi-processing pool)
- [x] 協程(Coroutines)
- [ ] Async IO Design Patterns
- [ ] 多執行緒 vs 多處理程序 vs 多處理程序池 vs 協程比較
蝦皮爬蟲主程式:
- [x] 單線異步爬取 shop_detail 資訊
- [x] 單線異步爬取 shop_product_url 資訊
- [x] 單線異步爬取 product_detail 資訊
- [x] Bigquery 存爬取資料
- [x] Bigquery 存計算後的每日營業額 & 每日產品銷售
- [ ] IP 檢測列隊 (使用生產者和消費者列隊去改)
- [ ] 外層用 Multi-processing 打包
競品分析的部分:
- [ ] 競品年銷售額
- [ ] 競品日銷售額
- [ ] 商品相關銷售
- [ ] 波士頓矩陣分類銷售產品
- [ ] 競品使用 Hash Tag 標籤
- [ ] 競品免運或優惠活動
這週花比較多時間研究 Coroutine,包含 Python 官方的 document 和 PEP 都有看,因為 Python 3.4~3.8 的改版過程中標準庫 Asyncio 的用法都有些變動,所以這週花了比較多時間在消化。 但在整理 Thread & Process & Coroutine 下來,也對併發、並行、阻塞和異步有較深的了解!
本週將會繼續延伸整理 Coroutine 實際上應用的例子,分別是 Chaining Coroutines & Coroutines with Queue 兩種不同的傳遞參數方法,如果還有時間也會把改寫 Python之父寫的 Asyncio 爬蟲修改和好好學習模仿一下