sodapy(Python中的Socrata API):update_metadata对我不起作用

时间:2018-12-18 10:27:12

标签: python socrata

我正在尝试使方法client.update_metadata()工作。 我写了这个脚本:

from sodapy import Socrata
# connecting to Socrata   
client = Socrata(domain="www.dati.friuliveneziagiulia.it", app_token=None, username="username", password="password")

# download ids of the datasets in the catalogue
id_dataset_catalogo = "dzgx-7n5a"
datasets = client.get(id_dataset_catalogo, provenance="official", publication_stage='published', select="category,u_id,name", where="type = 'dataset' and derived_view='false' and public='true'", content_type="json", limit=6000)

# update metadata
with open('Datasets_in_cui_il_programma_non_ha_avuto_successo.txt', 'w') as f:
    for i, dataset in enumerate(datasets):
        try:
            stringa = f"Dataset {dataset['u_id']}: {dataset['name']}, categoria: {dataset['category']}"
            print(f"{i+1}/{len(datasets)})" + stringa)
            client.update_metadata(dataset_identifier=dataset['u_id'], update_fields={'metadata': {"customFields": {"Vecchia categoria": {'Già categoria': dataset['category']}}}})
        except:
            f.write(stringa + '\n')

奇怪的是,如果我使用方法client.get_metadata(),则会得到预期的修改。相反,如果我转到域中的数据集,则根本看不到任何更改。 谢谢您的宝贵帮助。

0 个答案:

没有答案