小编fre*_*all的帖子

psycopg2选择timestamp返回包含在元组中的datetime.datetime,如何解压缩?

我创建了一个表:

 cursor.execute("CREATE TABLE articles (title varchar PRIMARY KEY, pubDate timestamp with time zone);")
Run Code Online (Sandbox Code Playgroud)

我插入了一个这样的时间戳:

timestamp = date_datetime.strftime("%Y-%m-%d %H:%M:%S+00")

cursor.execute("INSERT INTO articles VALUES (%s, %s)", 
              (title, timestamp))
Run Code Online (Sandbox Code Playgroud)

当我运行SELECT语句来检索时间戳时,它会返回元组:

cursor.execute("SELECT pubDate FROM articles")
rows = cursor.fetchall()
for row in rows:
    print(row)
Run Code Online (Sandbox Code Playgroud)

这是返回的行:

(datetime.datetime(2015, 12, 9, 6, 47, 4, tzinfo=psycopg2.tz.FixedOffsetTimezone(offset=660, name=None)),)
Run Code Online (Sandbox Code Playgroud)

如何直接检索datetime对象?

我查了几个其他相关的问题(见这里这里),但似乎找不到答案.可能会忽略这里简单的东西,但任何帮助将不胜感激!

python datetime tuples psycopg2

5
推荐指数
1
解决办法
7762
查看次数

将 Python Systemd 输出记录到日志文件

我将 python 脚本作为 systemd 服务运行,它在以下.service文件中定义:

[Unit]
Description=MyService
After=multi-user.target

[Service]
Type=idle
ExecStart=/usr/bin/python3 /home/username/projects/website_notifier/run_service.py

[Install]
After=multi-user.target
Run Code Online (Sandbox Code Playgroud)

在我的 run_service.py 文件中,我然后使用日志记录模块记录输出:

import logging

logging.basicConfig(filename=settings['log_file_name'], level=logging.INFO)
logging.info("Starting notifier service at " + str(datetime.utcnow()))
Run Code Online (Sandbox Code Playgroud)

问题是当我运行我启动我的文件时,这些信息没有被记录到我的日志文件中 systemctl

现在,我知道通常 systemd 会输出到 journalctl,我不想要这个。我希望能够通过另一个不以管理员权限运行的脚本访问此日志。

我怎样才能做到这一点?

python logging systemd

5
推荐指数
1
解决办法
4855
查看次数

标签 统计

python ×2

datetime ×1

logging ×1

psycopg2 ×1

systemd ×1

tuples ×1