python可以做哪些有趣的東西?

xiaodi1990


Python以其簡短易學、豐富強大的第三方庫,使得近幾年它倍受歡迎,也一直都是編程語言熱榜上名列前茅的編程語言。

依託它豐富的第三方庫、強大的社區支持,Python可以做很多有趣的事情,下面就來介紹一些可以嘗試的方向。

自動化工具,解放雙手

Python可以基於UI、自動化測試工具等開發一款網頁或者windows自動化工具,能夠解決重複的工作勞動,徹底解放雙手,下面來介紹一款工具。

pywinauto

如果你的工作、學習內容不僅限於網頁端、如果helium還不能滿足你高效工作的需求。那麼,pywinauto一定可以做到。

pywinauto是一款實現Windows GUI自動化的Python工具,它可以將鼠標和鍵盤操作發送到Windows對話框和控件。此外,它還支持更復雜的操作,例如獲取文本數據。

網站開發

結合一些成熟的網站開發框架,可以輕鬆的搭建一個晚上的網頁平臺,下面來介紹一個github熱門的工作流平臺。

airflow

airflow一個通過編程方式編寫、調度和監視工作流的平臺。

為什麼調度、監視工作流的方式有很多,卻偏偏選擇airflow呢?

因為,當工作流被定義為代碼時,它們變得更加可維護、版本化、可測試性和協作性,通過定義airflow有向無環圖工作流可以實現如下優點,

  • 動態
  • 可擴展
  • 簡潔清晰

影音娛樂

通過Python也可以實現QQ、網易雲等平臺的音樂爬取和聚合,這裡來介紹一款工具。

musicbox

musicbox是Python實現的網易雲音樂命令行版本,支持320kbps的高品質音樂,當然,每日推薦、歌曲評論......這些功能也都支持,經常使用*nix系統系統的同學可以嘗試一下。

數據爬取

通過使用Python,我們也可以爬取有用的信息,例如,金融數據、房源數據,這樣我們就不用再逐個的去打開網站去查看,下面來介紹一款Github工具。

lianjia-beike-spider

還在為租房買房時瞭解、對比不同平臺、不同區域價格而苦惱嗎?

lianjia-beike-spider爬蟲鏈家網和貝殼網房價,採集北京上海廣州深圳等21箇中國主要城市的房價數據(小區,二手房,出租房,新房)。


當然,除此之外,還可以做很多有趣的事情,可以 發散一下思維,思考一下工作、學習中的一些急需解決的痛點,然後去解決,我們自己也可以發掘很多有意義的場景。


Jackpop


這個就非常多啦,下面我簡單介紹3個非常有趣的Python模塊,涉及人臉識別、智能聊天和視頻下載,感興趣的朋友可以嘗試一下:

01

人臉識別

這裡主要用到face recognition這個模塊,專門用於人臉識別的一個Python庫,自帶有訓練模型(基於dlib深度識別技術),可以快速識別人臉並標註,安裝的話,直接在cmd窗口輸入命令“pip install dlib face_recognition_models face_recognition”即可(包含依賴模塊),接著我們就可以直接編寫代碼來識別人臉了,測試代碼如下,基本思路先讀取圖片,然後加載模型,最後再識別標註,整個過程不難,也非常容易理解:

程序運行截圖如下,已經成功識別人臉並標註,準確率還是非常高的,唯一的不足就是圖片在處理的過程中有些失真:

02

智能聊天

這裡主要用到itchat這個模塊,專門用於接入微信的一個Python庫,可以輕鬆接收微信並回復,智能聊天的話,需要註冊一個圖靈機器人,然後通過API Key接入微信,接著就可以自動處理收到的消息並回復,測試代碼如下,基本思路非常簡單,先獲取好友發來的消息,然後傳遞給圖靈機器人,匹配到回覆信息,最後再發送給好友:

程序運行截圖如下,掃碼登錄後,向任意一個好友發送消息,接著機器人便會自動開始聊天,非常智能,不過,新版功能好像做了限制,新號不是很好支持:

03

視頻下載

這裡主要用到you-get這個模塊,專門用於網頁視頻下載的一個Python庫,可以輕鬆下載B站、優酷、美拍等主流網站視頻,安裝的話,直接在cmd窗口輸入命令“pip install you-get”即可,接著我們就可以直接下載網頁視頻了,基本使用方式“you-get 視頻url地址”,程序便會自動開始解析下載,目前支持批量下載、在線格式查詢等:

當然,也支持本地在線播放功能,只需要用參數p指定本地播放器路徑即可,效果如下,使用起來還是非常不錯的:

目前,就分享這3個有趣的Python模塊吧,只要你有一定Python基礎,熟悉一下上面的代碼和示例,很快就能掌握的,當然,還有許多其他有趣的東西Python也可以完成,像繪製小豬佩奇、12306搶票小助手等,網上也有相關教程和資料,介紹的非常詳細,感興趣的話,可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言進行補充。


小小猿愛嘻嘻


目前Python已經在Top3編程語言獨領風騷很久,目前它有豐富的生態環境和人工智能的加持,無論在Web開發、AI或者自動化腳本都有快速上手的工具包,一個什麼都不會的初學者,憑藉社區大量豐富的Module,就可以輕易寫出邏輯明瞭、功能強大的代碼。

12306搶票助手

此文就介紹一個很有趣的項目——12306搶票助手。最近肯定有不少人因為旅遊、回鄉苦於沒得搶票、或者用線上那些搶票軟件但無法獲得效果。

Github上有一個公共項目(12306 購票小助手),功能已有:

  • 自動打碼
  • 自動登錄
  • 準點預售和撿漏
  • 智能候補
  • 郵件通知
  • server醬通知

項目地址為:https://github.com/testerSunshine/12306

上面功能實際上已經包含了一個12306搶票助手的所有功能,這裡面的難點實際上是在12306的圖片識別,但現在已經有了很多人工智能的項目,圖片識別就更是很多了,所以這上面也有不少關於12306的圖片識別項目,而且準確率還挺高,高達80%多正確率,具體代碼項目地址為:

https://github.com/zhaipro/easy12306

安裝事項

首先安裝項目下的Requirements.txt各種依賴包。

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt

其次就是一些服務器配置,或者也可以直接通過docker啟動。

項目思路架構

搶票邏輯實際很簡單,通過查餘票,提交訂單,檢查支付訂單,識別驗證碼,需要排隊則排隊,無需則提交訂單,後面給錢即可。如果其中一步存在問題,即回到查詢餘票步驟,繼續查詢等待。

項目運行示例


大魔王Hacker


如果要說Python能做哪些內容,這個就非常多了,

目前最為主流的,分為兩大類:

1、科學計算與數據分析

Python中有大量的庫可以為數據分析提供了完整的工具集,常見用於科學計算和數據分析的的類庫有:NumPy、Pandas、Matplotlib、SciPy、BioPython、SunPy 。比起MATLAB、R語言,Python語言功能更加健全.


2、人工智能

python有很多庫很方便做人工智能,比如numpy, scipy做數值計算的,sklearn做機器學習的,pybrain做神經網絡的,matplotlib將數據可視化的。


當然Python還常用於網絡爬蟲、Web應用程序開發、GUI程序開發、自動化運維等。


如果說Python能做哪些有趣的東西,就有趣的定義來說,其中下面有一位仁兄也提到了,可以做人臉識別、智能聊天,自動搶票等。


除此之外,還可以結合Python實現出一些人物畫像,例如可以只需要用50行Python代碼做出《復聯4》英雄漫畫人物:





另外,還可以利用Python來實現色情圖片識別,幫助網站甄別一些違規圖片。如果你平時也玩股票,可以利用Python程序,幫你自動分析股票趨勢,找出一些股與股之間的因果關係,從一些網站上爬取圖片、視頻等。


歡迎在下方留言,分享你所知道Python能實現哪些有趣的東西。


分享到:


相關文章: