【问题标题】:Import data from Salesforce using python使用 python 从 Salesforce 导入数据
【发布时间】:2020-02-11 09:37:40
【问题描述】:

我正在尝试将数据从 Salesforce 提取到 python。我可以连接到 Salesforce 并在 Python 中提取数据,但问题是 Python 以我不想要的 JSON 格式给我输出。

我需要帮助来转换数据框中的 JSON 格式。

这是我的代码:

#pip install salesforce_reporting
from simple_salesforce import Salesforce
from salesforce_reporting import Connection,ReportParser,MatrixParser
#import psycopg2 as psy


print("start connecting with salesforce database")
sf = Salesforce(username='XXXXX',password='XXXX',instance_url = 'https://na97.salesforce.com/',sandbox=0, security_token='')
print("connected with salesforce database")

print("start connecting with salesforce database")
sf = Salesforce(username='XXXXX',password='XXXX',instance_url = 'https://na97.salesforce.com/',sandbox=0, security_token='')
print("connected with salesforce database")
print("pull data from salesforce database object")
pd = sf.query("select name from Account where name ='New Technology Sweden AB'") # if we use sf.query_all then will can get all records from spefific objects
#print(pd)

这是我的输出:。

# to read data
pd

OrderedDict([('totalSize', 2),
             ('done', True),
             ('records',
              [OrderedDict([('attributes',
                             OrderedDict([('type', 'Account'),
                                          ('url',
                                           '/services/data/v38.0/sobjects/Account/0018000000UG7VaAAL')])),
                            ('Name', 'New Technology Sweden AB')]),
               OrderedDict([('attributes',
                             OrderedDict([('type', 'Account'),
                                          ('url',
                                           '/services/data/v38.0/sobjects/Account/0018000000vhiN4AAI')])),
                            ('Name', 'New Technology Sweden AB')])])])

【问题讨论】:

标签: python json dataframe salesforce


【解决方案1】:

“我不想要的 JSON 格式输出”

您需要帮助那些从未编写过 Python 代码的纯 Salesforce 人员。 “dataframe”可以接受哪些格式?

Salesforce REST API(由 simple_salesforce 使用)supports JSON and XML。您只需发送一个 HTTP“Accept”标头即可指定 XML。如果您可以使用 XML,那么也许您可以打开库的源代码,或者可能有一些配置选项来指定自定义标头...最坏的情况是您可以自己制作 GET 消息,一旦您登录,它就不是火箭科学,获取正确的地址 + Authorization Bearer <session id here> + 可选的 Accept application/xml

如果您需要 CSV 格式...该库表示它还支持 SF Bulk API。那个可以做JSON/XML/CSV,尽管您指定它略有不同。同样,也许您可​​以打开简单的salesforce 的源代码并稍微弄乱一下,也许您会自己编写请求。培训可能会有所帮助:https://trailhead.salesforce.com/en/content/learn/modules/api_basics/api_basics_bulk

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-22
    • 2020-08-06
    相关资源
    最近更新 更多