Python如何去實際提升工做的效率?也許這個會有用!

4月初,班主任的某次週會議上,華華關切的問了一下:最近班主任們有什麼難題嗎?就是花費了大家大部分時間的工做!咱們Python天團能夠幫大家解決問題。css

班主任大主管星星說:有。目前有一個大難題。咱們天天都會對進羣的學員登記他的真實姓名,聯繫方式,地址,目前薪資,指望薪資以及爲何會選擇檸檬班~而後對於全部學生的繳費狀況都會去騰訊進行查驗,確保學生有上課的權限,而且每次會提早提醒分期的同窗按時繳納分期費用,防止逾期而沒有上課的權限。python

華華:這不是so easy的事情嗎?mysql

星星:不easy,首先學生並非一天來的,而是天天不一樣的班級都會有不一樣的學員入學,那麼就要分類整理。第二:每一個學生的繳費信息方式不同,有的是分期,有的是全款,有的是微信帳號購買課程,因此爲了把入羣的qq和這些學費信息覈對起來,真的是很是的困難!web

華華:這好辦,我幫你搞定(固然那是不可能的),會後找到了Python天團的主管:小簡大佬。小簡大佬,班主任團隊最近遇到了一個比較繁瑣的問題,就是統計學生的信息比較費時,能夠幫忙用自動化搞定嗎?面試

簡佬(小簡大佬的簡稱):好的呀,有需求嗎?咱們團隊的可優和雨澤能夠幫忙作這個事情,你把需求搞定,咱們最遲一週內交付,畢竟咱們還有自動化測試和測試開發以及公開課的任務在身。 有Python天團的強有力支撐,那麼就能夠開始行動了!sql

PART 1:整理需求

因而:華華聯合星星,疏導了班主任的工做流程以及數據來源,整理出了一份需求。(各位親愛的VIP學員們,大家的服務都來自於班主任的不辭勞苦!)數據庫

關於學員信息統計:

包含了以下圖所示的一些信息編程

其中QQ來自QQ羣,微信訂單來自檸檬班內部的CRM系統,剩餘的信息來自檸檬班的學員信息管理後臺(由學員在檸檬班提供的表單上自行填寫),通過幾輪分析,肯定數據來自這3個不一樣的地方。微信

關於學生繳費信息統計:(這關係到學員是否有上課權限,是否會錯過上課時間,很是重要!)

可是這個信息會有2個問題: 1)若是學生是QQ報名的,那麼能夠直接根據QQ去統計信息。app

2)若是學生是微信報名的,那麼須要根據加入班級羣的QQ去CRM系統裏面找到對應的微信號,而後進行QQ微信匹配後再去騰訊課堂查詢,好比說Python17羣學員的QQ是:1248***816(保護學生隱私,匿了中間三位數),是經過微信報名的,那麼在CRM系統裏面的微信帳號是:144115213097282684,咱們在騰訊課堂後臺只能經過這個微信號才能惟一查詢到支付信息,以下所示:

3)若是學生是分期的,那麼還要點擊到分期的詳情頁去查看,分期的支付狀態並登記好以後幾期分期的支付時間,好按期對學員進行提醒,以避免逾期。好比說Python17期某位學員的QQ是:792***306,那麼查詢到分期訂單以下所示:

咱們須要點擊「分期明細」,進入到分期的詳情頁裏面去,才能看到學生的明確支付信息以及每一期的最後支付時間,以下所示:

PART 2:編寫腳本

需求整理完畢後,圖文並茂的交給了簡佬,固然part1部分的是簡單的描述,儘可能讓你們能夠看的明白點,比較複雜的就不寫出來了! 簡佬就開始分發任務:可優大佬負責學生繳費信息的統計腳本,雨澤大佬負責學員信息統計腳本,至於具體的實現過程,固然要跟你們分享一下!由華華來進行文字整理,由於華華在這個過程當中充當了班主任和Python天團的橋樑和需求整理者。

關於學員信息統計的腳本實現方式:

1:首先從對應班集體的QQ羣裏導出學員的Q信息 2:而後從檸檬班內部的CRM系統裏面導出學員的訂單信息 3:兩部分信息都保存至xlsx的文件裏面,而後利用Python的openpyxl第三方庫對兩份數據進行比對,對學員是微信報名的信息與QQ進行匹配,最後完成的第一步效果以下所示:

4:而後根據學員的QQ信息,利用Python的Python-mysql-connector第三方庫進行數據庫查詢,獲取到學員的詳細信息,以下所示:

腳本的話~~也截圖小小的看看,部分代碼,並不完整哦!學完檸檬班的Python自動化,你也能夠!

關於學員繳費信息統計的腳本實現方式:

1:利用學生信息統計的結果進行查詢,若是QQ查詢不到,就用QQ對應的微信號去進行查詢

2:若是是全款,那麼就直接登記信息,若是是分期,就登記分期連接,後期再單獨進行分期詳細信息的統計與登記。

3:以上兩步是很是清晰的,實現方式無外乎就是web頁面元素的定位,方式有多種,xpath css或id,可是這個腳本,有兩個亮點要跟你們分享下,但願你們之後遇到這個問題也能夠用相似的方法去處理。

亮點一:查詢以前先固定查詢的條件

這裏有兩個顯式的條件須要固定,一個是時間,咱們只查詢2019年1月1號開始的訂單,那麼這裏就設計到日曆的固定於選擇:

頁面的HTML源碼以下所示:

咱們可優大佬實現的方式是:

另一個須要固定的條件是:課程包名稱,這個是非selected控件,通過觀察是支持模糊查詢,而且須要從模糊查詢的結果裏面選擇對應的下拉元素才能夠生效的! 頁面的HTML源碼以下所示:

咱們可優大佬實現的步驟是:先輸入查詢的課程條件(儘可能能夠惟一肯定到惟一一個元素,而後選擇下拉框的第一個元素,第0個元素顯示的是「」所有「」),好比咱們輸入的是:python全棧自動化測試工程師第7-19期,那麼下拉框就會顯示能夠選擇的課程包名稱,實現代碼以下:

效果以下所示:

咱們經過代碼選擇下拉列表的第一個元素,而後神奇的事情就發生啦!後面出現了隱藏元素,班級!

以下所示:

那麼接下來就是選擇班級,可是咱們的查詢班級下拉框也是非selected的,並且不支持輸入只能從下拉元素中選擇,頁面的HTML源碼以下所示:

咱們實現的代碼以下所示:

至此查詢的難題已經所有實現,除了這裏有點浪費時間,其餘的都很是簡單!

亮點二:利用正則匹配分期的數據

學習自動化,不只僅要學習Python編程能力還須要學習其餘的知識,好比說正則!並且這些在檸檬班自動化的授課裏面全都有!這裏截取部分代碼,僅供參閱!

這個過程從構思到實現,都是在工做日時間實現的,5月1號,此項目正式上線!而且已經部署到班主任專用的電腦上的jenkins上!這樣能夠定時的去跑任務啦!班主任也能夠開始利用Python來武裝本身了!這個年代,不學點自動化,都很差意思說本身是Python班的班主任啦!

若是最近你發現班主任們變美了,心情也美美噠,天天跟你說話都是元氣滿滿的,那麼必定是由於Python給他們工做減負,他們多了時間化妝和休息!

有興趣的同窗能夠多多關注檸檬班的Python自動化課程,能夠找專業的Python自動化輔導員來領取專業的學習資料! 檸檬班等你好久了,特地爲你準備了一波自動化測試祕籍,助你突破薪資技能瓶頸!

包括 Jmeter、Python編程、Selenium、unittest+Http技術+ddt;appium自動化;還有自動化面試題,以及項目案例分享。有興趣的能夠加我哦,免費送!

相關文章
相關標籤/搜索