gpt4 book ai didi

python - 在 Heroku 中连接 psycopg2 和 Python

转载 作者:行者123 更新时间:2023-11-28 22:31:00 27 4
gpt4 key购买 nike

几天来,我一直在尝试将我的 python 3 脚本连接到 Heroku 中的 PostgresSQL 数据库(psycopg2),而不使用 Django。

我找到了一些文章和相关问题,但我不得不投入大量时间来获得一些我认为应该非常简单的东西,即使是像我这样的新手也是如此。

我最终以某种方式让它工作,但希望发布问题(和答案)将帮助其他人更快地实现它。

当然,如果大家有更好的方法,欢迎分享。


正如我所说,我有一个 python 脚本,我想让它使用 Heroku 从云端运行。不涉及 Django(只是一个脚本/抓取工具)。

我一开始觉得有帮助的文章,即使它们还不够:

最佳答案

主要步骤:

<强>1。简介

Procfile 必须是:

worker: python3 folder/subfolder/myscript.py

<强>2。 Heroku 插件

附加组件 Heroku Postgres::Database 必须添加到 heroku 帐户中相应的个人应用程序。

为确保设置正确,this很有帮助。

<强>3。带有数据库连接的 Python 脚本

最后,为了在我的 python 脚本 myscript.py 中创建连接,我使用了 this article。作为引用并将其改编为 Python 3:

import psycopg2
import urllib.parse as urlparse
import os

url = urlparse.urlparse(os.environ['DATABASE_URL'])
dbname = url.path[1:]
user = url.username
password = url.password
host = url.hostname
port = url.port

con = psycopg2.connect(
dbname=dbname,
user=user,
password=password,
host=host,
port=port
)

要创建一个新数据库,this SO question解释它。关键行是:

con.set_isolation_level(ISOLATION_LEVEL_AUTOCOMMIT)

关于python - 在 Heroku 中连接 psycopg2 和 Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41812322/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com