我有以下文件夹结构:
Monday
|-- __init__.py
|-- api.py
|-- db.py
|-- exceptions.py
|-- function.json
|-- main.py
`-- process_data.py
在我的main.py我从process_data.py. 当我运行func start启动我的 Azure 函数时,我得到:
(venv) ➜ monday git:(main) ✗ func start
Found Python version 3.8.5 (python3).
Azure Functions Core Tools (3.0.2931 Commit hash: d552c6741a37422684f0efab41d541ebad2b2bd2)
Function Runtime Version: 3.0.14492.0
Functions:
monday: timerTrigger
For detailed output, run func with --verbose flag.
[2020-11-02T00:56:08.423] Worker process started and initialized.
[2020-11-02T00:56:08.975] Worker failed to function id f73b3d07-44a3-4f64-be74-617bc6fede70.
[2020-11-02T00:56:08.976] Result: Failure
[2020-11-02T00:56:08.976] Exception: ModuleNotFoundError: No module named 'monday'. Troubleshooting Guide: https://aka.ms/functions-modulenotfound
[2020-11-02T00:56:08.976] Stack: File "/usr/local/Cellar/azure-functions-core-tools@3/3.0.2931/workers/python/3.8/OSX/X64/azure_functions_worker/dispatcher.py", line 262, in _handle__function_load_request
[2020-11-02T00:56:08.976] func = loader.load_function(
[2020-11-02T00:56:08.976] File "/usr/local/Cellar/azure-functions-core-tools@3/3.0.2931/workers/python/3.8/OSX/X64/azure_functions_worker/utils/wrappers.py", line 34, in call
[2020-11-02T00:56:08.976] raise extend_exception_message(e, message)
[2020-11-02T00:56:08.976] File "/usr/local/Cellar/azure-functions-core-tools@3/3.0.2931/workers/python/3.8/OSX/X64/azure_functions_worker/utils/wrappers.py", line 32, in call
[2020-11-02T00:56:08.976] return func(*args, **kwargs)
[2020-11-02T00:56:08.976] File "/usr/local/Cellar/azure-functions-core-tools@3/3.0.2931/workers/python/3.8/OSX/X64/azure_functions_worker/loader.py", line 76, in load_function
[2020-11-02T00:56:08.976] mod = importlib.import_module(fullmodname)
[2020-11-02T00:56:08.976] File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/importlib/__init__.py", line 127, in import_module
[2020-11-02T00:56:08.976] return _bootstrap._gcd_import(name[level:], package, level)
[2020-11-02T00:56:08.976] File "/Users/en/Workspace/zypp/monday/monday/process_data.py", line 3, in <module>
[2020-11-02T00:56:08.976] from monday.api import request_data
[2020-11-02T00:56:08.976] .
我读了这个线程,但它是关于外部和安装包的。这些只是我在同一目录中的本地脚本。
这是我的main.py样子:
import datetime
import logging
import azure.functions as func
from monday.process_data import export_to_azure, create_dataframe
def main(timer: func.TimerRequest) -> None:
utc_timestamp = datetime.datetime.utcnow().replace(
tzinfo=datetime.timezone.utc).isoformat()
# on timer run export data
df = create_dataframe()
export_to_azure(table_name="tasks", schema="monday", df=df)
logging.info('Python timer trigger function ran at %s', utc_timestamp)
我的内容function.json:
{
"scriptFile": "main.py",
"bindings": [
{
"name": "timer",
"type": "timerTrigger",
"direction": "in",
"schedule": "0 */5 * * * *"
}
]
}
注意:代码本身运行良好。

