-
詳解python 破解網(wǎng)站反爬蟲的兩種簡單方法
最近在學爬蟲時發(fā)現(xiàn)許多網(wǎng)站都有自己的反爬蟲機制,這讓我們沒法直接對想要的數(shù)據(jù)進行爬取,于是了解這種反爬蟲機制就會幫助我們找到解決方法。 常見的反爬蟲機制有判別身份和IP限制兩種,下面我們將一一來進行介紹。 (一) 判別身份 首先我們看一個例子,看看到底什么時候反爬蟲。我們還是以 豆瓣電影榜top250(https://movie.douban.com/top250) 為例。 這是段簡單的請求與網(wǎng)站連接并打印獲取數(shù)據(jù)的代碼,我們來看看它的運行結(jié)果。 我們可以發(fā)現(xiàn)我們什么數(shù)據(jù)都沒有獲取到,這就是由于…
-
20行Python代碼,無損壓縮千百張圖片!
前言 每個設(shè)計師、攝影師或有圖片處理需求小編,都會面臨批量高清大圖的困擾。 因為高清大圖放到網(wǎng)站上會嚴重拖慢加載速度,或是有的地方明確限制了圖片大小,因此,為了完成工作,他們總是需要先把圖片壓縮,再上傳。 當需要處理的圖片多至十張、百張、千張,則嚴重影響工作效率。這時候,就可以交給Python啦! 只需要20行Python代碼,就可以批量幫你無損壓縮數(shù)張照片。 一、項目思路 整個代碼的實現(xiàn)思路其實很簡單,首先,你需要安裝Python中現(xiàn)成的圖片處理模塊,然后將圖片打包好導入,用循環(huán)的方式自動化處…
-
Python給女朋友翻譯化妝品標簽,瞬間解決生存問題
最近小編遇到一個生存問題,女朋友讓我給她翻譯英文化妝品標簽。美其名曰:"程序猿每天英語開發(fā),英文一定很好吧,來幫我翻譯翻譯化妝品成分",”來,幫我看看這個面膜建議敷幾分鐘“。。。??磥沓饩拶Y買化妝品不算完,還需要會各種英文介紹。 默默收起大學考的一摞429分的四級證書,我打開了IDE。。。我打算開發(fā)一個能批量翻譯的圖片的demo,把家里的各種化妝品都翻譯好。機智如我,是不會自己從訓練模型做起的,打開有道智云的友好的AI接口頁面 ,果然有圖片翻譯服務(wù),體驗了一下可是真不錯,于是果斷使用。 效果展示…
-
9 個小技巧,加速 Python 的優(yōu)化思路
Python 是一種腳本語言,相比 C/C++ 這樣的編譯語言,在效率和性能方面存在一些不足。但是,有很多時候,Python 的效率并沒有想象中的那么夸張。本文對一些 Python 代碼加速運行的技巧進行整理。 0. 代碼優(yōu)化原則 本文會介紹不少的 Python 代碼加速運行的技巧。在深入代碼優(yōu)化細節(jié)之前,需要了解一些代碼優(yōu)化基本原則。 第一個基本原則是不要過早優(yōu)化。很多人一開始寫代碼就奔著性能優(yōu)化的目標,“讓正確的程序更快要比讓快速的程序正確容易得多”。因此,優(yōu)化的前提是代碼能正常工作。過早地…
-
臥槽!只是pip安裝輸錯字母,就中了挖礦病毒
用PyPI包管理工具安裝python軟件很方便,但你今后要三思而后行了。 當輸入這樣一句命令后: 你也許并未發(fā)現(xiàn)異常,仔細一看可能才會察覺自己剛剛手抖,把opencv輸錯了。 但此時安裝命令已經(jīng)開始運行了,因為openvc其實也是一個真實存在的軟件包,不過卻是個惡意軟件包。 最近,安全公司Sonatype發(fā)現(xiàn),很多惡意軟件都偽裝成常見的PyPI包,往往只差幾個字母。 隨著加密貨幣的火爆,黑客們開始把挖礦軟件植入其中。如果用戶手打pip安裝命令手滑一下,自己的電腦就可能變成“礦機”。 PyPI里的…
-
Python 小技巧 | Windows 文件名非用反斜杠
在編程過程中,我們往往會遇到一個小麻煩——微軟 Windows 系統(tǒng)在文件夾名之間使用反斜杠字符,而幾乎所有其它的計算機(操作系統(tǒng))都使用正斜杠: 這是由于上世紀 80 年代早期計算機歷史上的一個小意外。「MS-DOS」的第一版使用了正斜杠字符來指定命令行選項。當微軟在「MS-DOS 2.0」中加入了對文件夾的支持時,正斜杠字符已經(jīng)被使用了,所以他們采用了反斜杠作為替代。35 年后,我們?nèi)匀槐皇芾в谶@種不一致性。 如果你想讓你的 Python 代碼同時在 Windows 和 Mac/Linux …
-
Python專業(yè)造數(shù)庫:Faker
開發(fā)項目的時,為了測試常需要造假數(shù)據(jù),經(jīng)常要盡量的模擬真實環(huán)境,通常要費大量手工而且造出來的數(shù)據(jù),而且通常手工造出來的看起來也很別扭,費時又費事,有沒有更好的辦法?有,這里給大家介紹一個“專業(yè)造數(shù)“庫Faker,滿足你對模擬數(shù)據(jù)的所有需求。 項目開發(fā)初期,為了測試方便,我們總要造不少假數(shù)據(jù)到系統(tǒng)中,盡量模擬真實環(huán)境。比如要創(chuàng)建一批用戶名,創(chuàng)建一段文本,電話號碼,街道地址、IP地址等等。平時我們基本是鍵盤一頓亂敲,隨便造個什么字符串出來,當然誰也不認識誰。現(xiàn)在你不要這樣做了,用Faker就能滿足你…
-
Python最佳代碼實踐:性能、內(nèi)存和可用性!
遵循最佳做法的代碼庫在當今世界能得到高度評價。如果您的項目是開源的,這會是一個吸引優(yōu)秀開發(fā)人員的方式。作為開發(fā)人員,您想要編寫高效且優(yōu)化的代碼: 占用盡可能小的內(nèi)存、執(zhí)行地更快、看起來整潔、文檔正確、遵循標準風格指南,并且易于被新開發(fā)者理解。 這里討論的實踐可能有助于您為開源組織做出貢獻,向在線評審(Online Judge)提交解決方案,使用機器學習處理大量數(shù)據(jù)處理問題,或開發(fā)自己的項目。 實踐 1:盡量不要對內(nèi)存置之不理 Python 內(nèi)存管理器內(nèi)部確保對這個專用堆的管理。當您創(chuàng)建對象時,P…
-
手把手教你發(fā)布 Python 項目開源包
好不容易碼了個 python 項目,是不是很興奮?那么怎么把這個項目發(fā)出去讓大家看到呢?本文作者寫了一份在 GitHub 上發(fā)布 python 包的簡單分步指南。 作者以 SciTime 項目(一個對算法訓練時間進行估計的包)的發(fā)布為例,詳細解釋了發(fā)布的每個步驟。 注意:本文假設(shè)你在 GitHub 上已經(jīng)有一個想要打包和發(fā)布的項目。 第 0 步:獲取項目許可證 在做其他事之前,由于你的項目要開源,因此應(yīng)該有一個許可證。獲取哪種許可證取決于項目包的使用方式。開源項目中一些常見許可證有 MIT 或 …
-
必須具備Python Django開發(fā)技能
我們都知道Python編程語言的流行程度。在大多數(shù)技術(shù)公司中,這種語言用于開發(fā)應(yīng)用程序的后端部分。此外,這種語言廣泛應(yīng)用于數(shù)據(jù)科學、自動化等領(lǐng)域。Django是Python最流行的框架,現(xiàn)在很多應(yīng)用程序都在使用它,這也是大多數(shù)開發(fā)人員和學生選擇這種語言的原因。 Djangomake使您的代碼干凈、健壯和可伸縮。Django擁有優(yōu)秀的文檔,它使您的代碼更加整潔和高效。Django提供了快速的開發(fā)和高度的安全性。Python程序員的薪水與日俱增,這也是Django開發(fā)人員需求量大的另一個原因。 學習…