2011-09-21 10 views

Odpowiedz

15

używam beatbox

Przykład kwerendy do smyczy według adresu email

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 

aby uzyskać inne dane wyglądają na widok salesforce api docs

inne przykłady beatbox here

+0

hej matto, widziałem ich pliki do pobrania, czy to tylko dla Windows? bez pakietu dla Linux/Mac? – daydreamer

+0

jeśli masz zainstalowane setuptools możesz zrobić 'easy_install beatbox', w przeciwnym razie pobierz paczkę z github https://github.com/superfell/Beatbox i uruchom' python setup.py install' – MattoTodd

+0

niesamowite, spróbuje – daydreamer

7

Istnieje również pakiet o nazwie simple_salesforce.

można zainstalować go z:

$ pip install simple_salesforce 

można uzyskać dostęp do konta Salesforce z następujących czynności:

from simple_salesforce import Salesforce 
sf = Salesforce(username='[email protected]', password='password', security_token='token') 

README jest pomocny w odniesieniu do szczegółów ...

0

Chociaż nie jest to specyficzne dla Pythona. Natrafiłem na fajne narzędzie dla linii poleceń. Można uruchamiać polecenia bash jako opcja ..

https://force-cli.heroku.com/

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 
2

Oto gotowy kod, aby ktoś zaczął. Do pobierania raportów z 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 sprzedaży jest odbierany w wiadomości e-mail za każdym razem, gdy zmienisz hasło.

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) 
Powiązane problemy