當前位置:首頁 » 編程語言 » python服務

python服務

發布時間: 2022-01-23 09:39:48

python怎麼操作windows服務

你可以使用pythoncom 庫,它包含ActivePython 或者可以安裝pywin32 (Python for Windows extensions).

下面是一個簡單操作服務的例子:

importpythoncom

importwin32serviceutil

importwin32service

importwin32event

importservicemanager

importsocketclassAppServerSvc(win32serviceutil.ServiceFramework):

_svc_name_="TestService"

_svc_display_name_="TestService"


def__init__(self,args):

win32serviceutil.ServiceFramework.__init__(self,args)

self.hWaitStop=win32event.CreateEvent(None,0,0,None)

socket.setdefaulttimeout(60)


defSvcStop(self):

self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING)

win32event.SetEvent(self.hWaitStop)


defSvcDoRun(self):

servicemanager.LogMsg(servicemanager.EVENTLOG_INFORMATION_TYPE,

servicemanager.PYS_SERVICE_STARTED,

(self._svc_name_,''))

self.main()


defmain(self):

pass


if__name__=='__main__':

win32serviceutil.HandleCommandLine(AppServerSvc)

你的代碼需要放在mian()方法裡面,通常會有一些情況通過檢查你在 SvcStop 方法中設置的標志,然後中斷循環

Ⅱ python cmd下 啟動服務 新手問題

為什麼要用cmd 啟動? 你沒有IDE 么? 下載一個wing IDE 去吧,你要用的 linux 的話 可以用terminal 啟動
我在網上看windows cmd 下是這么啟動的
>windows:
安裝完後,在cmd命令行中輸python就行了,也就是打開python.exe,彈出命令行窗口,有python簡介和「>>>」提示就可調試了。
你試一下,不過還是建議你下載一個IDE, 要不然都沒法debug

Ⅲ python怎麼寫一個服務

fromtkinterimport*
fromttkimport*#更美觀的控制項


root=Tk()
text1=StringVar()
text2=StringVar()

deftest():
text2.set(text1.get())

l1=Label(text='YuanBao')
l2=Label(text='MiwenBao')
e1=Entry(root,width=50,textvariable=text1)
e2=Entry(root,width=50,textvariable=text2)
b=Button(root,text='ClickMe!',command=test)

l1.grid(row=0,column=0)
e1.grid(row=0,column=1)
b.grid(row=0,column=2)
l2.grid(row=1,column=0)
e2.grid(row=1,column=1)

更多Tk相關的應用,可以學習參考這個項目:網頁鏈接

以上,望採納!

Ⅳ 怎麼讓我的python程序 在linux上以服務的形式運行

編輯用戶的Crontab文件

crontabl -e

名稱 : crontab
使用許可權 : 所有使用者
使用方式 :
crontab [ -u user ] file
crontab [ -u user ] { -l | -r | -e }
說明 :
crontab 是用來讓使用者在固定時間或固定間隔執行程序之用,換句話說,也就是類似使用者的時程表。-u user 是指設定指定 user
的時程表,這個前提是你必須要有其許可權(比如說是 root)才能夠指定他人的時程表。如果不使用 -u user 的話,就是表示設定自己的時程表。
餐數 :
-e : 執行文字編輯器來設定時程表,內定的文字編輯器是 VI,如果你想用別的文字編輯器,則請先設定 VISUAL 環境變數來指定使用那個文字編輯器(比如說 setenv VISUAL joe)
-r : 刪除目前的時程表
-l : 列出目前的時程表
時程表的格式如下 :
f1 f2 f3 f4 f5 program

其中 f1 是表示分鍾,f2 表示小時,f3 表示一個月份中的第幾日,f4 表示月份,f5 表示一個星期中的第幾天。program 表示要執行的程序。
當 f1 為 * 時表示每分鍾都要執行 program,f2 為 * 時表示每小時都要執行程序,其餘類推
當 f1 為 a-b 時表示從第 a 分鍾到第 b 分鍾這段時間內要執行,f2 為 a-b 時表示從第 a 到第 b 小時都要執行,其餘類推
當 f1 為 */n 時表示每 n 分鍾個時間間隔執行一次,f2 為 */n 表示每 n 小時個時間間隔執行一次,其餘類推
當 f1 為 a, b, c,... 時表示第 a, b, c,... 分鍾要執行,f2 為 a, b, c,... 時表示第 a, b, c...個小時要執行,其餘類推
使用者也可以將所有的設定先存放在檔案 file 中,用 crontab file 的方式來設定時程表。
例子 :
每月每天每小時的第 0 分鍾執行一次 /bin/ls :
0 7 * * * /bin/ls

在 12 月內, 每天的早上 6 點到 12 點中,每隔 20 分鍾執行一次 /usr/bin/backup :
0 6-12/3 * 12 * /usr/bin/backup

周一到周五每天下午 5:00 寄一封信給 [email protected] :
0 17 * * 1-5 mail -s "hi" [email protected] /dev/null 2>&1 即可
例:如果用戶的Crontab文件的內容是:29 19 * * * echo its dinner time,則系統每天的19:29顯示『its dinner time』
示例(創建一個cron全過程,每分鍾都會在test.txt里輸入當前時間):

1. 以普通用戶登錄linux系統(我用的是CentOS4.1)

2. $crontab –e
說明:系統默認的編輯器是VIM,如果不是請加上以下shell:
$EDITOR=vi
$export EDITOR

3. 輸入」*/1 * * * * date >> $HOME/test.txt」,save and exit VIM

4. $su root

5. $cd /etc/init.d

6. ./crond restart

下面看看看幾個具體的例子:
● 0 */2 * * * /sbin/service httpd restart 意思是每兩個小時重啟一次apache

● 50 7 * * * /sbin/service sshd start 意思是每天7:50開啟ssh服務

● 50 22 * * * /sbin/service sshd stop 意思是每天22:50關閉ssh服務

● 0 0 1,15 * * fsck /home 每月1號和15號檢查/home 磁碟

● 1 * * * * /home/bruce/backup 每小時的第一分執行 /home/bruce/backup這個文件

● 00 03 * * 1-5 find /home "*.xxx" -mtime +4 -exec rm {} \; 每周一至周五3點鍾,在目錄/home中,查找文件名為*.xxx的文件,並刪除4天前的文件。
● 30 6 */10 * * ls 意思是每月的1、11、21、31日是的6:30執行一次ls命令

Ⅳ python 哪些web伺服器

所說所有的變數都是對象。 對象在python里,其實是一個指針,指向一個數據結構,數據結構里有屬性,有方法。

對象通常就是指變數。從面向對象OO的概念來講,對象是類的一個實例。在python里很簡單,對象就是變數。

class A:
myname="class a"
上面就是一個類。不是對象
a=A()
這里變數a就是一個對象。
它有一個屬性(類屬性),myname,你可以顯示出來
print a.myname

所以,你看到一個變數後面跟點一個小數點。那麼小數點後面

Ⅵ python 怎麼開啟遠程的服務

你可以使用python的pexcpct包通過ssh調用遠程伺服器指令:
import pxssh
import getpass
try:
s = pxssh.pxssh()
hostname = raw_input('hostname: ')
username = raw_input('username: ')
password = getpass.getpass('password: ')
s.login (hostname, username, password)
s.sendline ('uptime') # run a command
s.prompt() # match the prompt
print s.before # print everything before the propt.
s.sendline ('ls -l')
s.prompt()
print s.before
s.sendline ('df')
s.prompt()
print s.before
s.logout()
except pxssh.ExceptionPxssh, e:
print "pxssh failed on login."
print str(e)

Ⅶ ...與 Python 作為後端服務的編程語言各有什麼優劣

Node.js相優於Python的地方:
快:這個快有兩方面,第一是V8引擎快,第二是非同步執行,Node.js
功能上是一個基於V8引擎的非同步網路和IO Library,和Python的Twisted很像,不同的是Node.js的event
loop是很底層的深入在語言中的,可以想像成整個文件在執行的時候就在一個很大的event loop里;
npm:npm可以說是用起來最順手的package management了,npm作為Node.js的官方package management,匯集了整個社區最集中的資源;不像Python經歷過easy_install和pip,還有2to3的問題;
Windows支持:Node.js有微軟的加持,Windows基本被視為一等公民來支持,libuv已經可以很好的做到統一跨平台的API;而Python雖然也對Windows有官方的支持,但是總感覺是二等公民,時不時出些問題。
Python優於Node.js的地方:

言:就單純從語言的角度來說,Python寫起來要比javascript舒服很多;Javascript
設計本身有許多缺陷,畢竟當時設計的時候只是作為在瀏覽器中做一些簡單任務的script,所以代碼一旦龐大,維護還是有困難(不過Node.js的
mole很大的改善了這個問題),不過用Coffeescript可以很大的改善Javascript,幾乎可以和Python等同;

熟:成熟包括語言本身已經成熟,還有Framework和ecosystem也很龐大。Node.js的絕大多數framework都很新,有的API一
直在變,有的感覺已經不在維護,總之沒有一個像Django那種百足之蟲感覺的framework。Python的主流ORM
SQLalchemy也很成熟。
Python 和 Node.js 很難分高下的地方:

步Style:Node.js的非同步Style是CPS,也就是層層callback,基於event,和瀏覽器中的Javascript很像。CPS好
處是讓熟悉瀏覽器Javascript的人能很快上手,學習難度也不大。缺點是邏輯一復雜,就變得很難維護,基本上需要通過async.js這種
library,或者用promise。Python的非同步除了和Node.js很像的Twisted之外,也有基於coroutine的
gevent,coroutine讓非同步代碼維護起來更容易,不過學習曲線陡;
應用場景:如果是一個CRUD的app,
那麼想都不想直接是Python,Node.js本身不擅長CRUD的app(絕大多數Node.js都是直接裸在外面的,而不是有一個Nginx在前
面,否則websocket就不能用了,不過新版nginx開始支持websocket),代碼又不好維護,而Python的WSGI很適合,成熟的
stack也有很多。如果更偏向於real-time,比如一個chat room,那麼Node.js實現更容易。這兩個應用場景還是有差別的。
來源於知乎:https://www.hu.com/question/20961574

Ⅷ 如何重新部署 Python服務

https://www.hu.com/question/21888077你參考下

Ⅸ python如何判斷一個服務是否遠行

您好,在linux模式下,可以使用ps aux|grep python來判斷一個服務是否運行。
如果運行的話,可以看到進程名。

Ⅹ python怎麼搭建windows本地服務

一、從鏈接http://www.python.org/downloads/ 下載安裝包,注意32位和64位安裝包區別。我下載的是32位 2.7.6的,. 然後就是安裝,默認安裝到目錄C:\Python27,然後將此路徑添加到電腦 系統變數Path里。
從cmd進去,輸入python驗證是否安裝成功。如果看到下圖,表示安裝成功了:


實上,這一步完成後,Python就安裝完畢了。其他的都是開發的IDE。接下來就完成兩個HelloWorld。在F盤新建目錄
learnPython,然後新建一個txt文檔後綴改為.py,文件名字為test.py,注意不是test.py.txt.這時會發現圖標發生了變
化。右鍵選擇:edit with IDLE,這是一個Python安裝包自帶的編輯器,裡面輸入以下內容:

[python] view plain print?
<span style="font-family:Comic Sans MS;font-size:18px;">import sys
reload(sys)
sys.setdefaultencoding('utf8')
print ("Hello World")
</span>
在保存時後面會讓選cp569之類的編碼方式,不用管他用默認的。cmd里進入到F盤的learnPython目錄後,輸入命令python test.py, 就可以看到如下運行結果.

二、就像大家不會用vim寫C代碼一樣,要下個IDE,沒錯那就使用Eclipse+Pydev 搭建python開發環境。
在Eclipse的help--install new software里,點擊ADD 名字輸入Pydev,鏈接地址輸入:http://pydev.org/updates 然後選擇PyDev,另一個可以不選。就 可以下載了,會然給你確認是否同意之類的。安裝完畢後,重啟eclipse生效。

另外一種安裝方式是從http://www.cnblogs.com/linzhenjie/articles/2639113.html直接下載PyDev,解壓後得到Plugins和Feature文件夾 ,將這兩個文件夾中的內容分別拷貝到eclipse的安裝目錄D:\ProgramFile\adt-bundle-windows-x86-20130522\eclipse 下對應的plugins和feature目錄。重啟即可!需要注意的是,如果安裝了PyDev重啟Eclipse沒反應,那一定是你的java版本太低了。網上一種說法是PyDev的版本號需要和Python的版本盡量一致,這是胡扯。不一致也沒關系,我的java版本是1.7.0_45, Python是2.7.6版本, PyDev是3.2.0版本。最高版本的PyDev3.3.0安裝後不識別。我再另外一台電腦上,最初的java版本是1.6.*幾的,PyDev換成2.8的都不中,後來java版本調整一切ok了。

三、在Eclipse里配置python.exe的路徑。
打開eclipse後依次點擊Window--Preference--PyDev-------Interpreters(解釋器)---Python Interprete-----點擊new,然後定位到Python.exe的安裝路徑。如下圖,這樣就配置好了。新建工作空間Python。

最終的界面如下:

四、讓Python支持中文
說實話,在IDLE里盡管設置如下:
[python] view plain print?
<span style="font-family:Comic Sans MS;font-size:18px;">import sys
reload(sys)
sys.setdefaultencoding('utf8')</span>
但依舊是列印中文就掛。參考鏈接2,里指出要對eclipse設兩個地方為utf8.其實完全沒必要,因為eclipse本身默認的gbk編碼對中文支持已經很好了,只需在test.py里的開頭加上#coding=utf-8 就ok了。如下語句就能列印中文:
[python] view plain print?
<span style="font-family:Comic Sans MS;font-size:18px;">#coding=utf-8
print "Hello, World!"
print "您好,Python!"</span>

熱點內容
彈簧自動壓縮 發布:2025-01-07 06:08:35 瀏覽:522
傳奇榮耀腳本 發布:2025-01-07 05:53:14 瀏覽:979
為什麼安卓手機連接不了蘋果耳機 發布:2025-01-07 05:37:49 瀏覽:75
c語言mfc 發布:2025-01-07 05:33:18 瀏覽:592
自己搭建郵件伺服器ddns 發布:2025-01-07 05:19:29 瀏覽:205
光碟機無法訪問指定設備 發布:2025-01-07 05:17:19 瀏覽:104
如何刪除人人網的訪問記錄 發布:2025-01-07 05:02:47 瀏覽:281
清華編譯原理第2版答案pdf 發布:2025-01-07 04:48:03 瀏覽:936
pythonweb框架對比 發布:2025-01-07 04:48:00 瀏覽:606
交叉編譯應用程序示例 發布:2025-01-07 04:47:59 瀏覽:649