Python提升效率的七个工具
Python提升效率的七個(gè)工具
為了提升效率 ,我們?cè)诠ぷ髦谐3?huì)用到一些提升Python效率的工具,Python作為一種編程語言,他可以實(shí)現(xiàn)日常工作中的各種自動(dòng)化,為了更加方便開發(fā)項(xiàng)目,這里給大家推薦幾種python的效率工具。

- Pandas 主要用于數(shù)據(jù)分析
Panda主要是一種強(qiáng)大的分析結(jié)構(gòu)化的數(shù)據(jù)的工具集 、它的使用基礎(chǔ)是Numpy(提供高性能的矩陣運(yùn)算);用于數(shù)據(jù)挖掘和數(shù)據(jù)分析,同時(shí)提供數(shù)據(jù)清洗的功能。

# 1. 安裝pandas pip install pandas# 2.python的交互式界面 python -i# 3.使用pandas 導(dǎo)入panads 命名為pd import pandas as pd df = pd.DataFrame print(df)# 4. 輸出結(jié)果 Empth DataFrameColumns:Index: - Selenium 自動(dòng)化測(cè)試
Selenium是一個(gè)用于web應(yīng)用程序測(cè)試的工具,可以從終端用戶的角度來測(cè)試應(yīng)用程序??梢詮慕K端用戶的角度來測(cè)試應(yīng)用程序 。通過在不同瀏覽器中運(yùn)行測(cè)試 ,更容易發(fā)現(xiàn)瀏覽器的不兼容性。并且它適用于許多瀏覽器。

# 做一個(gè)簡(jiǎn)單地測(cè)試,通過打開瀏覽器并且打開google主頁from selenium import webdriverimport timebrowser = webdriver.Chrome(executable_path ="C:Program Files (x86)GoogleChromechromedriver.exe")website_URL ="https://www.google.co.in/"brower.get(website_URL)refreshrate = int(3) #每3秒刷新一次Google主頁。# 它會(huì)一直運(yùn)行
,直到你停掉編譯器。while True:time.sleep(refreshrate)browser.refresh- Flask — 微型 web 框架
Flask 是一個(gè)輕量級(jí)的可定制的框架,使用 python 語言編寫 ,相對(duì)于其他的同類框架結(jié)構(gòu)更加的靈活、輕便 、安全容易上手 。Flask是目前十分流行的 WEB 框架。開發(fā)者可以使用 python 語言快速地實(shí)現(xiàn)一個(gè)網(wǎng)站或web服務(wù)。

from flask import Flaskapp = Flask(__name__)@app.route('/')def hello_world:return 'Hello, World!'- Scrapy —頁面爬取
Scrapy能夠?yàn)槟闾峁?qiáng)大支持,使你能夠精確地從網(wǎng)站中爬取信息
。是非常實(shí)用。

現(xiàn)在基本上大部分開發(fā)者都會(huì)利用爬蟲工具來實(shí)現(xiàn)爬取工作的自動(dòng)化。所以編寫爬蟲編碼時(shí)就可以用到這個(gè)Scrapy。
啟動(dòng)Scrapy Shell也是十分的簡(jiǎn)單:
scrapy shell我們可以試著提取百度主頁上搜索按鈕的值 ,首先要找到按鈕使用的類 ,一個(gè)inspect element顯示該類為“ bt1”。
具體執(zhí)行以下操作 :
response = fetch("https://baidu.com")response.css(".bt1::text").extract_first==>"Search"- Requests—調(diào)用 API
Requests是一個(gè)功能強(qiáng)大的HTTP庫 。有了它可以輕松地發(fā)送請(qǐng)求。無需手動(dòng)向網(wǎng)址添加查詢字符串 。除此之外還有許多功能,比如authorization處理、JSON / XML解析、session處理等 。

示例
在下面的代碼中,我們使用 Request ( ) 構(gòu)造函數(shù)創(chuàng)建了一個(gè)新的 request實(shí)例 (用來請(qǐng)求同一目錄下的圖片), 然后返回請(qǐng)求的一些屬性。
const myRequest = new Request('http://localhost/flowers.jpg');const myURL = myRequest.url; // http://localhost/flowers.jpgconst myMethod = myRequest.method; // GETconst myCred = myRequest.credentials; // omitCopy to Clipboard
然后,通過將Request對(duì)象作為參數(shù)傳遞給GlobalFetch.fetch()調(diào)用來獲取此請(qǐng)求 ,例如:
fetch(myRequest) .then(response =>response.blob()) .then(blob =>{ myImage.src = URL.createObjectURL(blob); });Copy to Clipboard
在下面的代碼片段中,我們使用Request()構(gòu)造函數(shù)創(chuàng)建了一個(gè)新的request ,其中包含一些初始數(shù)據(jù)和正文內(nèi)容 ,用于需要主體有效載荷的api請(qǐng)求:
const myRequest = new Request('http://localhost/api', { method: 'POST', body: '{ "foo":"bar"}'});const myURL = myRequest.url; // http://localhost/apiconst myMethod = myRequest.method; // POSTconst myCred = myRequest.credentials; // omitconst bodyUsed = myRequest.bodyUsed;Copy to Clipboard
注意 :body類型只能是一個(gè)Blob,BufferSource (en-US), FormData, URLSearchParams, USVString 或者ReadableStream類型,因此增加一個(gè)JSON對(duì)象的有效載荷則需要字符串化該對(duì)象.
例如,您可以通過將Request對(duì)象作為參數(shù)傳遞給GlobalFetch.fetch()調(diào)用來獲取此api請(qǐng)求 ,并獲得響應(yīng):
fetch(myRequest) .then(response =>{ if (response.status === 200) { return response.json(); } else { throw new Error('Something went wrong on api server!'); } }) .then(response =>{ console.debug(response); // ... }).catch(error =>{ console.error(error); });- Faker— 主要用于創(chuàng)建假的數(shù)據(jù)
Faker是一個(gè)Python包,為您生成假數(shù)據(jù)。無論是需要引導(dǎo)數(shù)據(jù)庫、創(chuàng)建好看的 XML 文檔、填寫您的持久性來強(qiáng)調(diào)測(cè)試它,還是從生產(chǎn)服務(wù)中獲取的同名數(shù)據(jù),F(xiàn)aker 都適合您 。

使用pip安裝:
pip install Faker使用faker.Factory.create()創(chuàng)造并初始化faker生成器