J'ai une trame de données qui stocke le nom du magasin et le nombre de ventes quotidiennes. J'essaye d'insérer ceci dans Salesforce en utilisant le script Python ci-dessous. Cependant, j'obtiens l'erreur suivante:
TypeError: Object of type 'int64' is not JSON serializable
Ci-dessous, il y a la vue de la trame de données.
Storename,Count
Store A,10
Store B,12
Store C,5
J'utilise le code suivant pour l'insérer dans Salesforce.
update_list = []
for i in range(len(store)):
update_data = {
'name': store['entity_name'].iloc[i],
'count__c': store['count'].iloc[i]
}
update_list.append(update_data)
sf_data_cursor = sf_datapull.salesforce_login()
sf_data_cursor.bulk.Account.update(update_list)
Obtention de l'erreur, lorsque la dernière ligne ci-dessus est exécutée. Quelqu'un pourrait-il aider à résoudre ce problème? Merci..
Cela pourrait être la réponse tardive, mais récemment, j'ai eu la même erreur. Après beaucoup de surf, cette solution m'a aidé.
def myconverter(obj):
if isinstance(obj, np.integer):
return int(obj)
Elif isinstance(obj, np.floating):
return float(obj)
Elif isinstance(obj, np.ndarray):
return obj.tolist()
Elif isinstance(obj, datetime.datetime):
return obj.__str__()
Appelez myconverter
dans json.dumps()
comme ci-dessous. json.dumps('message', default=myconverter)