[英]Read Tokens from config file in Python
我是 Python 世界的新手,我有一個問題要問你:
我使用 Python Twitter 工具來流式傳輸和存儲推文,並希望從不同的文件 (config.py) 中讀取訪問令牌,格式如下:
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
謝謝你,對不起我的英語不好!
您可以簡單地導入變量。
將此文件保存為config.py
然后您可以按如下方式導入消費者密鑰:
from config import CONSUMER_KEY
print(CONSUMER_KEY)
>> XXXXXXX
確保包含這些文件的文件夾中有一個__init__.py
文件。
更好的做法是從它所在的文件夾中導入它。
from folder_name.config import CONSUMER_KEY
您也可以在__init__.py
導入它,然后使用
from folder import CONSUMER_KEY
@Daniel Lee 在導入方面的回答是正確的,但是您可能會考慮使用環境變量來提高安全性。 主要是防止這些設置被提交給任何人都可能查看的源代碼控制。
如果您從命令行運行它,您可以自己將它們設置在一個文件中:
# 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 配置中設置它們。
你如何在你的程序中獲得它們也取決於你如何運行它。 大多數情況下你應該能夠做到
from os import environ
token_key = environ.get('ACCESS_TOKEN_KEY')
# etc ...
或者例如,如果您使用的是 Flask:
from flask import request
token = request.environ.get('ACCESS_TOKEN_KEY')
(我確定 Django 有類似的東西,但我不太熟悉)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.