原创 python第三方庫推薦 - 用furl優雅的操作url

基本操作 >>> from furl import furl >>> f = furl('http://www.google.com/?page=1') >>> f.scheme, f.host, f.port, f.path,

原创 飄逸的python - 使用圖像匹配SIFT算法進行LOGO檢測

先上效果圖. 其中是logo標識, 是待檢測圖片. 代碼如下. #coding=utf-8 import cv2 import scipy as sp img1 = cv2.imread('x1.jpg',0) # queryIm

原创 爬蟲——用xslt抽取頁面內容

XSL介紹 XSL指擴展樣式表語言(EXtensible Stylesheet Language), 它是一個XML文檔的樣式表語言。XSL 可描述如何來顯示XML文檔。 XSLT中的T指Transformations,即XSL轉

原创 獨立python環境之virtualenv和virtualenvwrapper

介紹 假設有一臺測試機,多個人使用,有多個項目,不同項目可能python版本不一樣,需要的庫不一樣。我們需要一個獨立乾淨的python環境,互相隔離,互不影響。 virtualenv可以幫我們解決這個問題。 virtualen

原创 飄逸的python - __new__、__init__、__call__傻傻分不清

__new__: 對象的創建,是一個靜態方法,第一個參數是cls。(想想也是,不可能是self,對象還沒創建,哪來的self) __init__ : 對象的初始化, 是一個實例方法,第一個參數是self。 __call__ : 對象可ca

原创 sentry客戶端raven黑魔法一例

之前碰到一個很奇怪的問題 from raven import Client client = Client(xxxdsn) raise 爲什麼這樣就會將異常發送sentry了,明明代碼沒有任何顯式捕獲異常的行爲,它是怎麼捕獲異常的

原创 記一次Django代碼性能優化及Pycharm Profile使用

是一段導出數據月報的腳本,原先需要十幾秒,優化後只需要1秒多。 Pycharm Profile 優化第一步就是Profile,先看看慢在哪裏。Pycharm自帶Profile工具,很方便。 拿一張官方圖說明一下。 圖表說明: 給出

原创 使用Django-environ來區分不同環境

介紹 就是一個讀取環境變量的東西 就2個類: Env/ Path. 基本用法 env.example文件 ALLOWED_HOSTS=www.example1.com,www.example2.com DATABASE_URL='mys

原创 高效使用Pycharm不完全指南

定位 Search EverywhereCtrl+光標最近打開的文件目錄樹的“雷達”查找補全 Tab萬能的Alt-EnterSurroud withEmmet編輯 BasicExtend Selection/ Shrink Selecti

原创 根據自身經歷詮釋《調試九法》

9條基本調試規則: Understand The System Make It Fail Quit Thinking and Look Divide and Conquer Change One Thing At A Time K

原创 記一次請求Django接口時URL結尾少了斜槓的問題

事情是這樣的。移動端的同事在調用Django接口時,明明已經有登錄態,卻返回未登錄。於是app以爲是token過期,刷新token再請求,再提示未登錄,如此反覆,造成了死循環。 查看日誌,發現是URL後面少了斜槓,由於Django中設置了

原创 Pycharm調試器綜述

場景 “代碼有沒有跑到這裏呀,加個print看看,這裏也加個print呢,那裏也加個print呢。調試完了還得把print語句刪掉” “爲啥這個地方循環沒跑進去呢” “Django接口返回hello world的時候發生了什麼” “調

原创 社區帖子anti-spam綜述

搞了anti-spam之後,發現原來殺毒軟件的原理也是類似的,瀏覽器的AdBlock插件原理也是類似的. 目的垃圾是不可能根絕的,就跟犯罪不可能根絕一樣.所以anti-spam的目的,就是提高攻擊成本,降低防禦成本.攻擊者的目的無非就是

原创 怎樣寫一個任務隊列

之前在用celery的時候,遇到了worker卡住的bug,於是認真的看了相關文檔和代碼,瞭解celery實現的原理。 其實核心原理非常簡單: 發送任務到隊列 守護程序worker死循環不斷從隊列取任務並執行 至於怎麼包裝傳遞這個任務

原创 《人月神話》筆記

人月神話(The Mythical Man-Month) 在衆多軟件項目中,缺乏合理的時間進度是造成項目滯後的最主要原因,它比其他所有因素加起來的影響還大。 用人月作爲衡量一項工作的規模是一個危險和帶有欺騙性的神話。它暗示着人員數量和時