首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Python的配置文件中读取令牌

从Python的配置文件中读取令牌
EN

Stack Overflow用户
提问于 2017-10-11 13:55:12
回答 2查看 2.8K关注 0票数 2

我是Python世界里的新手,我有一个问题要问你:

我正在使用Python工具来流化和存储tweet,并希望以格式读取来自不同文件(config.py)的访问令牌:

代码语言:javascript
复制
from twitter import *

WORLD_WOE_ID = 1
ARGENTINA_WOE_ID = 23424747

CONSUMER_KEY = "xxxxxx"
CONSUMER_SECRET = "xxxxx"
ACCESS_TOKEN_KEY = "xxxxx"
ACCESS_TOKEN_SECRET = "xxxxx"

如何读取此文件并仅解析所需的标记?

我尝试使用"file.readline()“,但该命令为我提供了完整的行(包括"CONSUMER_KEY =.”)。(等等)我只需要引号之间的键:S。

谢谢你,为我糟糕的英语道歉!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-10-11 14:05:37

您可以简单地导入变量。

将此文件保存为config.py

然后,您可以导入使用者密钥,如下所示:

代码语言:javascript
复制
from config import CONSUMER_KEY

print(CONSUMER_KEY)
>> XXXXXXX

确保包含这些文件的文件夹中有一个__init__.py文件。

更好的做法是从它所在的文件夹导入它。

代码语言:javascript
复制
from folder_name.config import CONSUMER_KEY

您也可以在__init__.py中导入它,然后用

代码语言:javascript
复制
from folder import CONSUMER_KEY
票数 2
EN

Stack Overflow用户

发布于 2017-10-11 14:07:09

@Daniel在导入方面的回答是正确的,但是您可以考虑使用环境变量来提高安全性。主要是防止将这些设置提交到可能被任何人查看的源代码管理中。

如果您从命令行运行它,则可以在文件中自行设置它们:

代码语言:javascript
复制
# yourfile.sh

WORLD_WOE_ID = 1
ARGENTINA_WOE_ID = 23424747

CONSUMER_KEY = "xxxxxx"
CONSUMER_SECRET = "xxxxx"
ACCESS_TOKEN_KEY = "xxxxx"
ACCESS_TOKEN_SECRET = "xxxxx"

然后,在运行程序之前,请执行以下操作:

source yourfile.sh

也可以在运行程序之前指定它们:

ACCESS_TOKEN_KEY=xxxxx ACCESS_TOKEN_SECRET=xxxxx python yourscript.py

或者,如果这是基于web的,您将希望在web服务器配置或WSGI配置中设置它们。

如何在程序中获得它们也在一定程度上取决于您如何运行它。大多数情况下你应该能够做到

代码语言:javascript
复制
from os import environ
token_key = environ.get('ACCESS_TOKEN_KEY')
# etc ...

或者,例如,如果您使用的是水瓶:

代码语言:javascript
复制
from flask import request
token = request.environ.get('ACCESS_TOKEN_KEY')

(我肯定Django也有类似的东西,但我对它不太熟悉)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46690072

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档