C'è una libreria o un pacchetto che possiamo usare con python per connettersi a Salesforce e ottenere dati?python salesforce library per ottenere dati salesforce?
risposta
Io uso beatbox
Esempio per interrogare per un cavo per indirizzo e-mail
import beatbox
sf_username = "Username"
sf_password = "password"
sf_api_token = "api token"
def get_lead_records_by_email(email)
sf_client = beatbox.PythonClient()
password = str("%s%s" % (sf_password, sf_api_token))
sf_client.login(sf_username, password)
lead_qry = "SELECT id, Email, FirstName, LastName, OwnerId FROM Lead WHERE Email = '%s'" % (email)
records = sf_client.query(lead_qry)
return records
Per ottenere altri dati guardare il panorama salesforce api docs
altri esempi beatbox here
Questo è il migliore della mia esperienza: http://code.google.com/p/salesforce-python-toolkit/
C'è anche un pacchetto chiamato simple_salesforce.
È possibile installarlo con:
$ pip install simple_salesforce
È possibile ottenere l'accesso al tuo account Salesforce con il seguente:
from simple_salesforce import Salesforce
sf = Salesforce(username='[email protected]', password='password', security_token='token')
Il readme è disponibile per quanto riguarda i dettagli ...
Sebbene questo non sia specifico di Python. Mi sono imbattuto in uno strumento interessante per la riga di comando. È possibile eseguire i comandi bash come opzione ..
Usage: force <command> [<args>]
Available commands:
login force login [-i=<instance>] [<-u=username> <-p=password>]
logout Log out from force.com
logins List force.com logins used
active Show or set the active force.com account
whoami Show information about the active account
describe Describe the object or list of available objects
sobject Manage standard & custom objects
bigobject Manage big objects
field Manage sobject fields
record Create, modify, or view records
bulk Load csv file use Bulk API
fetch Export specified artifact(s) to a local directory
import Import metadata from a local directory
export Export metadata to a local directory
query Execute a SOQL statement
apex Execute anonymous Apex code
trace Manage trace flags
log Fetch debug logs
eventlogfile List and fetch event log file
oauth Manage ConnectedApp credentials
test Run apex tests
security Displays the OLS and FLS for a give SObject
version Display current version
update Update to the latest version
push Deploy artifact from a local directory
aura force aura push -resourcepath=<filepath>
password See password status or reset password
notify Should notifications be used
limits Display current limits
help Show this help
datapipe Manage DataPipes
Ecco il codice pronto per ottenere chiunque iniziato. Per il recupero dei report da SFDC.
import pandas as pd
import numpy as np
from pandas import DataFrame, Series
from simple_salesforce import Salesforce #imported salesforce
sf = Salesforce(username='[email protected]', password='enter_password', security_token = 'Salesforce_token')
token di vendita viene ricevuto via email ogni volta che si modifica la password.
import requests #imported requests
session = requests.Session() #starting sessions
from io import StringIO #to read web data
error_report_defined = session.get("https://na4.salesforce.com/xxxxxxxxxxxx?export=1&enc=UTF-8&xf=csv".format('xxxxxxxxxxxx'), headers=sf.headers, cookies={'sid': sf.session_id})
df_sfdc_error_report_defined = pd.DataFrame.from_csv(StringIO(error_report_defined.text))
df_sfdc_error_report_defined = df_sfdc_error_report_defined.to_csv('defined.csv', encoding = 'utf-8')
error_report = pd.read_csv('defined.csv') #your report is saved in csv format
print (error_report)
hey matto, ho visto i loro download, è solo per Windows? nessun pacchetto per linux/mac? – daydreamer
se hai setuptools installato puoi fare 'easy_install beatbox', altrimenti scarica il pacchetto da github https://github.com/superfell/Beatbox ed esegui' python setup.py install' – MattoTodd
impressionante, proverò – daydreamer