我想在我的 Django 网站上访问和打印由ERDDAP服务器提供的元数据(属性和值),该服务器是各种 OPeNDAP。
所以我准备了一个简单的示例函数,调用该函数get_conventions
来访问这个托管数据和元数据的公共服务器上的元数据字段。首先,我安装所需的软件包:
$ pip install pandas erddapy
接着,
import pandas as pd
from erddapy import ERDDAP
def get_conventions(dataset_id):
e = ERDDAP(server='https://gliders.ioos.us/erddap/', protocol='tabledap', response='csv')
url = e.get_info_url(dataset_id, response='csv')
df = pd.read_csv(url)
# this replace spaces with underscores in column names
df.columns = [col_name.replace(' ', '_') for col_name in df.columns]
conventions = df[df.Attribute_Name == 'Conventions'].Value
return conventions
使用 Python 解释器,可以使用此示例数据集 id 作为参数 (amelia-20180501T0000) 调用这样的函数,该参数位于服务器上;输出如下:
>>> get_conventions('amelia-20180501T0000')
6 Unidata Dataset Discovery v1.0, COARDS, CF-1.6
Name: Value, dtype: object
>>>
我希望我的网站在网页上打印上述功能的输出。
我可以在页面中打印参数字符串(model.py、views.py 和相关的 html 模板 - 类似于Django 教程),但我不确定如何将参数引用到函数(并期望返回)或如何/在何处将功能集成到 Django 结构中。
参数存储在本地数据库中,可以使用模型/视图/模板引用
但是我不确定如何在Django中集成涉及该功能的部分?