的Windows解決方案(應該在XP上運行)
>>> import win32net,time
>>> users,nusers,_ = win32net.NetUserEnum(None,2)
>>> for user in users:
... print "%-20s %s"%(user['name'],time.ctime(user['last_logon']))
...
Administrator Sat Oct 06 04:59:59 2012
Bob Mon Nov 05 10:03:17 2012
Guest Wed Dec 31 16:00:00 1969
joran Fri May 10 08:04:36 2013
SophosSAUNEREUS0 Fri May 10 13:31:26 2013
Umläut Tue Nov 13 16:21:49 2012
可以使用
import platform
platform.uname()
,以確定您所在的操作系統,並使用一個單獨的方法爲每個操作系統,例如
import platform
os_name = platform.uname()[0].lower()
if os_name == "windows":
get_win_login_time()
elif os_name.endswith("nix"):
get_nix_login_time()
....
回答你的問題re網絡用戶
import win32net, win32netcon, platform
win32net.NetUserEnum(win32net.NetGetDCName(),2,win32netcon.FILTER_NORMAL_ACCOUNT)
對於linux [this](http://www.cyberciti.biz/faq/linux-display-date-and-time-of-login/)頁面可能會對您有所幫助。 – Bakuriu 2013-05-10 20:40:27
win32api有NetUserEnum http://docs.activestate.com/activepython/2.5/pywin32/win32net__NetUserEnum_meth.html,它看起來像你使用2級別,你會得到last_login作爲返回的用戶信息字段... ...應該工作得很好XP – 2013-05-10 20:51:09