python调用lib_基于python调用libvirt API
基于python調用libvirt API
1、程序代碼
#!/usr/bin/python
import libvirt
import sys
def createConnection():
conn = libvirt.openReadOnly(None)
if conn == None:
print 'Failed to open connection to QEMU/KVM'
sys.exit(1)
else:
print '-----Connection is created successfully-----'
return conn
def closeConnection(conn):
print ''
try:
conn.close()
except:
print 'Failed to close the connection'
return 1
print 'Connection is closed'
def getDomInfoByName(conn, name):
print ''
print '----- get domain info by name -----'
try:
myDom = conn.lookupByName(name)
except:
print 'Failed to find the domain with name "%s"' % name
return 1
print "Dom id: %d name: %s" % (myDom.ID(), myDom.name())
print "Dom state: %s" % myDom.state(0)
print "Dom info: %s" % myDom.info()
print "memory: %d MB" % (myDom.maxMemory()/1024)
print "memory status: %s" % myDom.memoryStatus()
print "vCPUs: %d" % myDom.maxVcpus()
def getDomInfoByID(conn, id):
print ''
print '----- get domain info by ID -----'
try:
myDom = conn.lookupByID(id)
except:
print 'Failed to find the domain with ID "%d"' % id
return 1
print "Domain id is %d ; Name is %s" % (myDom.ID(), myDom.name())
if __name__ == '__main__':
name1 = "kvm-guest"
name2 = "notExist"
id1 = 3
id2 = 9999
print "---Get domain info via libvirt python API---"
conn = createConnection()
getDomInfoByName(conn, name1)
getDomInfoByName(conn, name2)
getDomInfoByID(conn, id1)
getDomInfoByID(conn, id2)
closeConnection(conn)
2、運行,結果如圖1所示
python libvirt-test.py 2>/dev/null
圖 1
3、中間過程錯誤說明
執行運行命令時出現如圖2所示的錯誤
圖 2
本文實驗環境是利用編譯安裝的qemu和libvirt,沒有安裝libvirt-python的依賴包,所以需要python官網上下載相應的包,下載鏈接如下
https://pypi.python.org/pypi/libvirt-python/3.10.0
下載后解壓編譯安裝,操作如下
tar -zxvf libvirt-python-3.10.0.tar.gz
python setup.py build
python setup.py install
安裝完成后,查看/usr/local/lib/python2.7/dist-packages/目錄下是否有相應的包,如圖3所示
圖 3
即可繼續執行步驟2中的指令即可得到相應運行結果。
使用Python調用Flickr API抓取圖片數據
Flickr是雅虎旗下的圖片分享網站,上面有全世界網友分享的大量精彩圖片,被認為是專業的圖片網站.其API也很友好,可以實現多種功能.這里我使用了Python調用其API獲得了大量的照片數據.需要注意 ...
關于python調用zabbix api接口
因公司業務需要,引進了自動化運維,所用到的監控平臺為zbbix3.2,最近正在學習python,計劃使用python調用zabbix api接口去做些事情,如生成報表,我想最基本的是要取得zabbix ...
Python調用win32 API繪制正弦波
Python調用win32 API新建窗口與直接創建窗口的流程相同 流程:注冊窗口→創建窗口→顯示窗口→更新窗口→消息循環 代碼: # -*- coding: utf-8 -*- import win ...
python 調用zabbix api接口實現主機的增刪改查
python程序調用zabbix系統的api接口實現對zabbix_server端主機的增刪改查,使用相關功能時候,需要打開腳本中的相關函數. 函數說明: zabbixtools() ?調用zabbi ...
『Python』Python 調用 ZoomEye API 批量獲取目標網站IP
#### 20160712 更新 原API的訪問方式是以 HTTP 的方式訪問的,根據官網最新文檔,現在已經修改成 HTTPS 方式,測試可以正常使用API了. 0x 00 前言 ZoomEye 的 ...
Python調用ansible API系列(四)動態生成hosts文件
方法一:通過最原始的操作文件的方式 #!/usr/bin/env python # -*- coding: utf-8 -*- """ 通過操作文件形式動態生成ansib ...
python 調用zabbix api實現查詢主機信息,輸出所有主機ip
之前發現搜索出來的主機調用zabbix api信息都不是那么明確,后來通過zabbix官方文檔,查到想要的api信息,隨后寫一篇自己這次項目中用到的api. #!/usr/bin/env python ...
基于C語言libvirt API簡單小程序
libvirt API簡單小程序 1.程序代碼如下 #include #include int getDomainInf ...
python調用java API
JPype documentation JPype is an effort to allow python programs full access to java class libraries. ...
隨機推薦
windows安裝zookeeper-單機模式
zookeeper下載地址:http://zookeeper.apache.org/releases.html#download ? 本次使用的是3.4.9版本 前提:請安裝JDK 安裝: 創建安裝目 ...
rsyslog配置報錯解決
配置過程中,查看/var/log/meassage 有報錯信息: action '*' treated as ':omusrmsg:*' - please use ':omusrmsg:*' synt ...
利用Httponly提升web應用程序安全性
隨著www服務的興起,越來越多的應用程序轉向了B/S結構,這樣只需要一個瀏覽器就可以訪問各種各樣的web服務,但是這樣也越來越導致了越來越 多的web安全問題.www服務依賴于Http協議實現,Htt ...
《zw版·Halcon-delphi系列原創教程》 3d汽車模型自動區域分割
3d汽車模型自動區域分割 目前,圖像分析,在3D設計,機器視覺方面擁有很廣.這個Halcon腳本是3d汽車模型自動區域分割,很簡單才20 ...
Native App執行JS
iOS: - (void)webViewDidFinishLoad:(UIWebView *)webView{????????//js方法名+參數????NSString* jsCode = [NSS ...
android 常用顏色
reference: http://blog.csdn.net/leewenjin/article/details/17386265
淺析Web緩存
在前端開發中,性能一直都是被大家所重視的一點,然而判斷一個網站的性能最直觀的就是看網頁打開的速度.其中提高網頁反應速度的一個方式就是使用緩存.一個優秀的緩存策略可以縮短網頁請求資源的距離,減少延遲,并 ...
發布自己第一個npm 組件包(基于Vue的文字跑馬燈組件)
一.前言 總結下最近工作上在移動端實現的一個跑馬燈效果,最終效果如下: 印象中好像HTML標簽的'marquee'的直接可以實現這個效果,不過 HTML標準中已經廢棄了'marquee'標簽 既然HT ...
mysql Unknown error 1054
mysql查詢錯誤? Unknown error 1054 錯誤原因:字段名字不對應 解決方案:一一比對字段名稱,令實體字段名稱與數據庫字段對應或者與你的sql語句中的別名對應起來
2018最新iOS端界面UI設計規范整理
在iPhone 6還沒出的時候,都是用640×1136 px來做設計稿的,自從6的發布,所有的設計稿尺寸以750×1334 px來做設計稿尺寸 以750x1334px作為設計稿標準尺寸的原由: 從中間 ...
總結
以上是生活随笔為你收集整理的python调用lib_基于python调用libvirt API的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 菜鸟教程python位运算符_NumPy
- 下一篇: websocket python爬虫_p