xml模塊處理文檔:importxml.etree.ElementTreeasETtree=ET.parse('xmlfile')#ET.parse()解析xml文檔root=tree.getroot()#獲取根節(jié)點(diǎn)print(root.tag)#root.tag獲取根節(jié)點(diǎn)標(biāo)簽這里是dataforiinroot:print(i.tag)#獲取根節(jié)點(diǎn)下的標(biāo)簽print(i.attrib)#獲取根節(jié)點(diǎn)下的標(biāo)簽屬性標(biāo)簽>>:country、標(biāo)簽屬性>>:{'na
系統(tǒng) 2019-09-27 17:47:56 1773
首先聲明,沒有什么不良動(dòng)機(jī),因?yàn)榻?jīng)常會(huì)用translate.google.cn,就想著用Python模擬網(wǎng)頁提交實(shí)現(xiàn)文檔的批量翻譯。據(jù)說有API,可是要收費(fèi)。生成TokenGoogle為防爬蟲而生成token的代碼是Javascript的,且是根據(jù)網(wǎng)站的TKK值和提交的文本動(dòng)態(tài)生成。網(wǎng)上搜到的一段Python代碼有點(diǎn)小Bug,且缺少動(dòng)態(tài)獲取TKK的步驟。最后還是對照J(rèn)avascript代碼自己改成Python了。方法很簡單,先轉(zhuǎn)成易懂的Javascript
系統(tǒng) 2019-09-27 17:47:50 1773
Python命令行之旅:深入argparse(二)作者:HelloGitHub-ProdesireHelloGitHub的《講解開源項(xiàng)目》系列,項(xiàng)目地址:https://github.com/HelloGitHub-Team/Article前言在上一篇“深入argparse(一)”的文章中,我們深入了解了argparse的包括參數(shù)動(dòng)作和參數(shù)類別在內(nèi)的基本功能,具備了編寫一個(gè)簡單命令行程序的能力。本文將繼續(xù)深入了解argparse的進(jìn)階玩法,一窺探其全貌,助
系統(tǒng) 2019-09-27 17:47:15 1773
本文以實(shí)例形式實(shí)現(xiàn)了python監(jiān)控linux性能以及進(jìn)程消耗性能的方法,具體實(shí)現(xiàn)代碼如下:#-*-coding:utf-8-*-"""CreatedonTueJun1010:20:132014@author:lifeix"""fromcollectionsimportOrderedDictimporttimeimportosdefcpuinfo():lines=open('/proc/stat').readlines()forlineinlines:ln
系統(tǒng) 2019-09-27 17:47:12 1773
rindex()方法返回所在的子str被找到的最后一個(gè)索引,可選擇限制搜索的字符串string[beg:end]如果沒有這樣的索引存在,拋出一個(gè)異常。語法以下是rindex()方法的語法:str.rindex(str,beg=0end=len(string))參數(shù)str--此選項(xiàng)指定要搜索的字符串。beg--這是開始索引,默認(rèn)情況下為0len--這是最后的索引,默認(rèn)情況下它等于字符串的長度。返回值此方法如果找到返回最后一個(gè)索引,否則如果沒有找到str引發(fā)一
系統(tǒng) 2019-09-27 17:47:10 1773
fileinput模塊可以遍歷文本文件的所有行.它的工作方式和readlines很類似,不同點(diǎn)在于,它不是將全部的行讀到列表中而是創(chuàng)建了一個(gè)xreadlines對象.下面是fileinput模塊中的常用函數(shù)input()#它會(huì)返回能夠用于for循環(huán)遍歷的對象.filename()#返回當(dāng)前文件的名稱lineno()#返回當(dāng)前(累計(jì))的行數(shù)filelineno()#返回當(dāng)前文件的行數(shù)isfirstline()#檢查當(dāng)前行是否是文件的第一行復(fù)制代碼代碼如下:#
系統(tǒng) 2019-09-27 17:46:52 1773
什么是生成器?可以理解為一種數(shù)據(jù)類型,這種數(shù)據(jù)自動(dòng)實(shí)現(xiàn)了迭代器協(xié)議(其他數(shù)據(jù)類型需要調(diào)用自己內(nèi)置的_iter_方法),所以生成器就是可迭代對象python提供生成器的兩種表現(xiàn)形式:1.生成器函數(shù):常規(guī)函數(shù)的定義,但是,使用yield語句而不是return語句返回結(jié)果。yield語句一次返回一個(gè)結(jié)果,在每個(gè)結(jié)果中間,掛起函數(shù)的狀態(tài),以便下次從它離開的地方繼續(xù)執(zhí)行。**函數(shù)里有yiled,執(zhí)行函數(shù)就是一個(gè)生成器,不管yield位置在哪。采集函數(shù)創(chuàng)建生成器時(shí),如
系統(tǒng) 2019-09-27 17:46:40 1773
問題:測試時(shí)收發(fā)流采用TestCenter、SmartBit等儀表來進(jìn)行。如果仍采用其進(jìn)行自動(dòng)化冒煙,則會(huì)帶來效率低、成本高的問題。解決方案:采用網(wǎng)卡來收發(fā)流,雖然有性能統(tǒng)計(jì)上的缺陷,但可以驗(yàn)證一些基本功能,且經(jīng)濟(jì)。采用scapy模塊,1-獲取計(jì)算機(jī)網(wǎng)卡的iface,并預(yù)先設(shè)計(jì)好用哪些iface進(jìn)行收發(fā)流;2-conf.L2listen對各個(gè)iface進(jìn)行監(jiān)聽3-subprocess.Popen來調(diào)用tShark.exe啟動(dòng)抓包,也可以調(diào)用ping.exe
系統(tǒng) 2019-09-27 17:46:36 1773
Fibonacci斐波那契數(shù)列,很簡單,就是一個(gè)遞歸嘛,學(xué)任何編程語言可能都會(huì)做一下這個(gè)。最近在玩Python,在粗略的看了一下LearningPython和CorePython之后,偶然發(fā)現(xiàn)網(wǎng)上有個(gè)帖子Python程序員的進(jìn)化寫的很有意思。于是打算仿照一篇,那篇帖子用了十余種方法完成一個(gè)階乘函數(shù),我在這里會(huì)用九種不同的風(fēng)格寫出一個(gè)Fibonacci函數(shù)。要求很簡單,輸入n,輸出第n個(gè)Fibonacci數(shù),n為正整數(shù)下面是這九種不同的風(fēng)格:1)第一次寫程序
系統(tǒng) 2019-09-27 17:46:31 1773
在做接口測試的時(shí)候,我們經(jīng)常會(huì)遇到一種情況就是要對接口的參數(shù)進(jìn)行各種可能的校驗(yàn),手動(dòng)修改很麻煩,尤其是那些接口參數(shù)有幾十個(gè)甚至更多的,有沒有一種方法可以批量的對指定參數(shù)做生成處理呢。答案是肯定的!python的jinja2模板庫可以很好的滿足我們的需求,通過維護(hù)一個(gè)原始數(shù)據(jù)模板,將我們想要?jiǎng)討B(tài)生成的變量模板化,就可以實(shí)現(xiàn)需求。現(xiàn)在我們有這樣的一個(gè)請求數(shù)據(jù){"abc":"123","p2p":"123","smid":"20180807220733939b6
系統(tǒng) 2019-09-27 17:46:03 1773