トップページ > プログラム > 2014年05月14日 > 8hs3vCSL

書き込み順位&時間帯一覧

48 位/250 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000000002002



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
くだすれPython(超初心者用) その22

書き込みレス一覧

くだすれPython(超初心者用) その22
927 :デフォルトの名無しさん[sage]:2014/05/14(水) 21:07:01.61 ID:8hs3vCSL
>>925
手直ししてみた。bugの所は>>924で対処して。

from subprocess import check_output, CalledProcessError
from datetime import datetime
from tkinter import Label
from time import sleep
import re
threshold = 10
fmt = "Firefoxを使い始めてから\n{}分以上経過しました。"
msg = fmt.format(threshold)
while True:
try:
x = check_output(["pidof", "firefox"])
except CalledProcessError:
pass
pid = x.decode().rstrip()
try:
y = check_output(["ps", "-p", pid, "-o", "etime"])
except CalledProcessError:
pass
s = y.decode()
m = re.search("\d+:\d+$", s)
str_etime = m.group()
etime = datetime.strptime(str_etime, "%M:%S")
# 1時間1分経過したとき、etime.minute(=1) < threshold(=10) だと思うけど?
# 無限 loop 前提の動作なら、bug では?
if etime.minute >= threshold:
label = Label(None, text=msg, font=("sans-serif", 16))
label.pack(padx=8, pady=8)
label.mainloop()
sleep(30)
くだすれPython(超初心者用) その22
928 :デフォルトの名無しさん[sage]:2014/05/14(水) 21:17:29.10 ID:8hs3vCSL
丸一日以上経過すると、以下の形式で
DD-HH:MM:SS
日数が表示される。

想定していない使用方法何だろうけど、
丸一日以上経過した場合にも、頑張って対応してみてね。

$ ps -p 3813 -o etime
ELAPSED
7-05:23:11


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。