saleforce.com soap api的python客户端

beatboxxx的Python项目详细描述


简介

这是一个distutils打包和更新版本的beatbox模块 由simon fell编写,它是 Salesforce.com合作伙伴Web服务API。

beatbox module

此模块包含Salesforce.com客户端的两个版本:

  • xmlclient
    返回XmlTramp对象的客户机的原始Beatbox版本。
  • pythonclient
    将返回的对象封送到正确的python数据类型中。例如,整数字段返回整数。

兼容性

Beatbox支持Salesforce Partner Web的16.0到20.0版本 服务API。但是,以下api调用尚未在 这次:

  • 转换导线
  • 空霉素
  • 失效会话
  • 注销
  • 合并
  • 处理
  • queryall
  • 取消删除
  • 描述对象
  • 发送电子邮件
  • 描述数据类别组
  • 描述数据类别组结构

Beatbox已经用Python2.4和Python2.6进行了测试。

基本用法示例

实例化python salesforce.com客户端:

svc = beatbox.PythonClient()
svc.login('username', 'passwordTOKEN')

(注意,通过api与salesforce.com交互需要使用 必须附加到密码的“安全令牌”。

查询姓氏为“doe”的联系人:

res = svc.query("SELECT Id, FirstName, LastName FROM Contact WHERE LastName='Doe'")
res[0]
# {'LastName': 'Doe', 'type': 'Contact', 'Id': '0037000000eRf6vAAC', 'FirstName': 'John'}
res[0].Id
# '0037000000eRf6vAAC'

添加新潜在客户并获取新创建潜在客户的ID:

contact = {'type': 'Lead', 'LastName': 'Glick', 'FirstName': 'David', 'Company': 'Individual'}
res = svc.create(contact)
res[0]['id']
# '00Q7000000RVyiHEAT'

更多示例

examples文件夹包含原始Beatbox的示例。为了 关于如何使用pythonclient的示例请参见 src/beatbox/tests/test_pythonclient.py。

其他一些在Beatbox上构建的产品也可以 提供使用示例:

备选方案

david lanstein创建了一个Python Salesforce Toolkit,它基于 sudssoap库。基于有限的测试,它看起来有点慢 比Beatbox更适合返回大量数据的操作;但是,它可能是 如果希望能够自动生成服务代理,则更好的选择 对于新的wsdl(例如对于企业web服务api)。

Salesforce.com的RonHess已经将Beatbox改为与谷歌应用程序一起使用 引擎。请参见http://code.google.com/p/force app engine/>;

运行测试

首先,我们需要向Salesforce实例中的Contacts对象添加一些自定义字段:

  • 登录Salesforce.com实例
  • 浏览到“设置”–>;“自定义”–>;“联系人”–>;“字段”–>;“新建”按钮
  • 添加一个标签为“最喜爱的水果”的选择列表(多选),然后添加:苹果、桔子、梨
  • 保留默认值3行,字段名应默认为“最喜爱的水果”
  • 添加一个标有“Favorite Integer”的数字,18位,0位小数
  • 添加一个标记为“Favorite Float”的数字,有13位,5位小数

使用以下格式在python路径中创建sfconfig文件:

USERNAME='your salesforce username'
PASSWORD='your salesforce passwordTOKEN'

其中token是您的salesforce api登录令牌。 在pythonpath中添加“./src” 运行测试:

python src/beatbox/tests/test_beatbox.py
python src/beatbox/tests/test_pythonClient.py

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Spring Hibernate NoClassDefFoundError CurrentSessionContext   Java中的While循环不会对文档的最后一行执行操作   java如何禁用javafx窗口   java有哪种方法的功能与retain all相反?   统计Java基于箱线图生成随机数   Java:PropertyResourceBundle   java编译/捕获异常   日志记录如何使用java log4j将日志文件保存在monthwise文件夹中?   气泡排序Java气泡排序   java无法使用无服务器本地调用AWS Lambda   java在更新JLabel文本时遇到问题;与Netbeans 6.9的GUI生成器相关   java自动设置一个类中的所有字段(private)   java将列表<BuffereImage>转换为图像