(python)遍历Salesforce表列表以提取并加载到AWS S3中
大家早上好 我正试图让一个例程遍历一个表列表。以下代码适用于单个表“contact”。我想遍历我的tablelist.csv中列出的所有表。我将下面需要在代码中动态修改的选项加粗。在这一点上,我的大脑因为工作了两个晚上而变得非常紧张,我已经做好了充分的准备,互联网告诉我这是Python简介的第二章,但是我可以利用这些帮助来克服这个障碍(python)遍历Salesforce表列表以提取并加载到AWS S3中,python,pandas,amazon-s3,Python,Pandas,Amazon S3,大家早上好 我正试图让一个例程遍历一个表列表。以下代码适用于单个表“contact”。我想遍历我的tablelist.csv中列出的所有表。我将下面需要在代码中动态修改的选项加粗。在这一点上,我的大脑因为工作了两个晚上而变得非常紧张,我已经做好了充分的准备,互联网告诉我这是Python简介的第二章,但是我可以利用这些帮助来克服这个障碍 import pandas as pd import boto3 from simple_salesforce import salesforce li = p
import pandas as pd
import boto3
from simple_salesforce import salesforce
li = pd.read_csv('tablelist.csv', header=none)
desc = sf.**Contact**.describe()
field_names = [field['name'] for field in desc['fields']]
soql = "SELECT {} FROM **Contact**".format(','.join(field_names))
results = sf.query_all(soql)
sf_df = pd.DataFrame(results['records']).drop(columns='attributes')
sf_df.to_csv('**contact**.csv')
s3 = boto3.client('s3')
s3.upload_file('contact.csv', 'mybucket', 'Ops/20201027/contact.csv')
如果您能提供一个tablelist文件的示例,这会有所帮助,但这里有一个尝试…您真的只需要获取表列表并在其中循环
#assuming table is a column somewhere in the file
df_tablelist = pd.read_csv('tablelist.csv', header=none)
for Contact in df_tablelist['yourtablecolumttoiterateon'].tolist():
desc = sf.**Contact**.describe()
field_names = [field['name'] for field in desc['fields']]
soql = "SELECT {} FROM {}".format(','.join(field_names), Contact)
results = sf.query_all(soql)
sf_df = pd.DataFrame(results['records']).drop(columns='attributes')
sf_df.to_csv(Contact + '.csv')
s3 = boto3.client('s3')
s3.upload_file(Contact + '.csv', 'mybucket', 'Ops/20201027/' + Contact + '.csv')