簡介在實際自動化項目運行過程中,很多時候App可以會出現(xiàn)各種異常,為了更好的定位問題,除了捕捉日志我們還需要對運行時的設(shè)備狀態(tài)來進(jìn)行截屏。從而達(dá)到一種“有圖有真相”的效果。截圖方法方法1save_screenshot()該方法直接保存當(dāng)前屏幕截圖到當(dāng)前腳本所在文件位置。driver.save_screenshot('login.png')查看方法1源碼:方法2get_screenshot_as_file(self,filename)將截圖保留到指定文件路徑
系統(tǒng) 2019-09-27 17:51:40 1826
綜述多線程是程序設(shè)計中的一個重要方面,尤其是在服務(wù)器Deamon程序方面。無論何種系統(tǒng),線程調(diào)度的開銷都比傳統(tǒng)的進(jìn)程要快得多。Python可以方便地支持多線程。可以快速創(chuàng)建線程、互斥鎖、信號量等等元素,支持線程讀寫同步互斥。美中不足的是,Python的運行在Python虛擬機上,創(chuàng)建的多線程可能是虛擬的線程,需要由Python虛擬機來輪詢調(diào)度,這大大降低了Python多線程的可用性。希望高版本的Python可以解決這個問題,發(fā)揮多CPU的最大效率。網(wǎng)上有些
系統(tǒng) 2019-09-27 17:50:36 1826
前天在微信上遇到一個小伙伴問我一個關(guān)于Sublimetext配置Python解釋器的問題,可能是初學(xué)者,對這方面還不是很懂,想使用快捷鍵但是徒勞一場,因為缺少Python解釋器,直接按下快捷鍵Ctrl+B是不會得到想要的結(jié)果的。鑒于此,如果有小伙伴想使用Sublime跑Python程序的話,那么配置Python解釋器是必不可少的一步,這里小編整理這篇手把手教程,希望為后來者鋪磚引路。下面是詳細(xì)教程:1、首先打開Sublime,如下圖所示,然后選擇“Pref
系統(tǒng) 2019-09-27 17:50:11 1826
腳本如下:fromopenpyxlimportload_workbookworkbook=load_workbook(u'/tmp/test.xlsx')#找到需要xlsx文件的位置booksheet=workbook.active#獲取當(dāng)前活躍的sheet,默認(rèn)是第一個sheet#如果想獲取別的sheet頁采取下面這種方式,先獲取所有sheet頁名,在通過指定那一頁。#sheets=workbook.get_sheet_names()#從名稱獲取shee
系統(tǒng) 2019-09-27 17:48:59 1826
客戶要求將微信的帶參二維碼增加log,首次生成的時候log直接是個沒顏色的,客戶想要給點顏色看看,第一次生成圖片如下生成的客戶需要的原因是因為底圖的數(shù)據(jù)通道和log的數(shù)據(jù)通道不同為L8像素黑白,log為RGB3x8位像素真彩通道一個圖片可以包含一到多個數(shù)據(jù)通道,如果這些通道具有相同的維數(shù)和深度,Pil允許將這些通道進(jìn)行疊加模式11位像素,黑和白,存成8位的像素L8位像素,黑白P8位像素,使用調(diào)色板映射到任何其他模式RGB3×8位像素,真彩RGBA4×8位像
系統(tǒng) 2019-09-27 17:48:30 1826
image前不久,我寫了一篇文章回顧Python中print的發(fā)展歷史,提到了兩條發(fā)展線索:明線:早期的print語句帶有C和Shell的影子,是個應(yīng)用程序級的statement,在最初十幾年里,經(jīng)歷過PEP-214和PEP-259的改進(jìn);再到2009年的大版本3.0,由語句改成了print()函數(shù),還在3.3版本,做過一次功能增強,最終上升成為一等的內(nèi)置函數(shù)。暗線:介紹了print的競爭對手們,像傳統(tǒng)的日志模塊logging、調(diào)試模塊pdb、主流IDE的
系統(tǒng) 2019-09-27 17:48:27 1826
這個程序的功能非常的簡單,就是每天在系統(tǒng)中新建一個文件夾。文件夾即當(dāng)前的時間。此代碼是在同事那邊看到的,為了鍛煉下自己薄弱的Python能力,所以花時間重新寫了一個。具體代碼如下:importtime,osbasePath='F:\\work\\'thisYear=str(time.localtime()[0])thisMonth=str(time.localtime()[1])thisDay=time.strftime("%Y-%m-%d",time.l
系統(tǒng) 2019-09-27 17:48:16 1826
pickle包的dump函數(shù)和load函數(shù)分別實現(xiàn)了數(shù)據(jù)的序列化和反序列化。一、dump()方法pickle.dump(obj,file,[,protocol])注釋:序列化對象,將對象obj保存到文件file中去。參數(shù)protocol是序列化模式,默認(rèn)是0(ASCII協(xié)議,表示以文本的形式進(jìn)行序列化),protocol的值還可以是1和2(1和2表示以二進(jìn)制的形式進(jìn)行序列化。其中,1是老式的二進(jìn)制協(xié)議;2是新二進(jìn)制協(xié)議)。file表示保存到的類文件對象,f
系統(tǒng) 2019-09-27 17:47:49 1826
好吧,我承認(rèn)我是對晚上看到一張合適的票轉(zhuǎn)讓但打過電話去說已經(jīng)被搞走了這件事情感到蛋疼。直接上文件吧。#coding:utf-8'''春運查詢火車票轉(zhuǎn)讓信息Author:piglei2007@gmail.comDate:2011.01.25'''importreimportosimporttimeimporturlparseimportdatetimeimporttracebackimporturllib2importsocketsocket.setdefa
系統(tǒng) 2019-09-27 17:47:42 1826
最近我必須執(zhí)行一項從一個需要登錄的網(wǎng)站上爬取一些網(wǎng)頁的操作。它沒有我想象中那么簡單,因此我決定為它寫一個輔助教程。在本教程中,我們將從我們的bitbucket賬戶中爬取一個項目列表。教程中的代碼可以從我的Github中找到。我們將會按照以下步驟進(jìn)行:提取登錄需要的詳細(xì)信息執(zhí)行站點登錄爬取所需要的數(shù)據(jù)在本教程中,我使用了以下包(可以在requirements.txt中找到):requestslxml#步驟一:研究該網(wǎng)站打開登錄頁面進(jìn)入以下頁面“bitbuck
系統(tǒng) 2019-09-27 17:47:27 1826