TypeError: descriptor 'date' requires a 'datetime.datetime' object but received a 'int'
Asked Answered
C

2

8
import beatbox
import pandas as pd
import numpy as np
from simple_salesforce import Salesforce
from datetime import *
import datetime as dt
import mysql.connector
from mysql.connector import Error
from datetime import datetime
query_result= [{'End_Date__c': datetime.date(2018, 7, 20), 'User_Email__c': '[email protected]', 'ProductVersion__c': '1', 'Product_Name__c': 'Payor', 'itil_b__Account__r': {'type': 'Account', 'Id': '', 'Customer_Short_Name__c': 'TESTACCT'}, 'Target_Environment__r': {'type': 'Environment__c', 'Id': '', 'Name': 'TEST-PROD'}, 'type': 'itil_b__Fulfillment__c', 'Id': 'a3sc0000000CiZpAAK'}, {'End_Date__c': datetime.date(2018, 7, 19), 'User_Email__c': '[email protected]', 'ProductVersion__c': '4', 'Product_Name__c': 'CareManager', 'itil_b__Account__r': {'type': 'Account', 'Id': '', 'Customer_Short_Name__c': 'TESTACCT'}, 'Target_Environment__r': {'type': 'Environment__c', 'Id': '', 'Name': 'TEST-NONPROD'}, 'type': 'itil_b__Fulfillment__c', 'Id': 'a3sc0000000CiAyAAK'}]

record=query_result['records']
df=pd.DataFrame(records)
print df

When I execute above python script, I am getting error

Traceback (most recent call last):
  File "test.py", line 10, in <module>
    query_result= [{'End_Date__c': datetime.date(2018, 7, 20), 'User_Email__c': '[email protected]', 'ProductVersion__c': '1', 'Product_Name__c': 'Payor', 'itil_b__Account__r': {'type': 'Account', 'Id': '', 'Customer_Short_Name__c': 'TESTACCT'}, 'Target_Environment__r': {'type': 'Environment__c', 'Id': '', 'Name': 'TEST-PROD'}, 'type': 'itil_b__Fulfillment__c', 'Id': 'a3sc0000000CiZpAAK'},  {'End_Date__c':datetime.date(2018, 7, 19), 'User_Email__c': '[email protected]', 'ProductVersion__c': '4', 'Product_Name__c': 'CareManager','itil_b__Account__r': {'type': 'Account', 'Id': '', 'Customer_Short_Name__c': 'TESTACCT'}, 'Target_Environment__r': {'type': 'Environment__c', 'Id': '', 'Name': 'TEST-NONPROD'}, 'type': 'itil_b__Fulfillment__c', 'Id': 'a3sc0000000CiAyAAK'}]
TypeError: descriptor 'date' requires a 'datetime.datetime' object but received a 'int'

The input I am passing to query_result got from a salesforce soap Api.

Please help me to resolve this issue.. Thanks in advance

Chemesh answered 28/7, 2017 at 19:52 Comment(1)
Please check and edit your question, it is badly formatted and unreadableFettle
P
20

Change your import statement from:

from datetime import datetime

to

import datetime

As when you say from datetime import datetime you are just importing one method and that and not the whole module. And you haven't imported the date method. You could also do this:

>>> from datetime import date
>>> date(2018, 9, 20)
datetime.date(2018, 9, 20)
Proceed answered 28/7, 2017 at 20:13 Comment(0)
A
0
import datetime

datetime(2018, 7, 20).date()
Abortifacient answered 12/2, 2018 at 9:32 Comment(1)
Welcome to StackOverflow. Answers with only code in them tend to get flagged for deletion as they are "low quality". Please read the help section on answering questions then consider adding some commentary to your Answer.Sinaloa

© 2022 - 2024 — McMap. All rights reserved.