[英]how do I determine whether a python script is imported as module or run as script?
[英]How do I find out whether a Python module is run on GAE?
我有一個使用 lxml 的模塊。 由於這不能在 GAE 上導入,我想默認使用合適的替代品。 類似於以下內容:
if not ON_GAE:
import lxml
else:
import beautifulsoup
如何確定我在 GAE 上? 是否有某種操作系統變量?
更新:某些模塊無法在 GAE 上運行(例如sockets
)。 except ImportError
,我不想擁有多個try
... 塊,而是想從一開始就知道哪些代碼塊需要替代實現。
你可以使用這個:
on_app_engine = os.environ.get('SERVER_SOFTWARE', '').startswith('Google')
然后是這樣的:
if on_app_engine:
import lxml
else:
import bla
您可以簡單地嘗試查看導入是否引發異常,並僅在必要時使用另一個導入。
try:
import lxml
except ImportError:
import beautifulsoup
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.