python - 使用 Python 从 Salesforce URL 下载图像
问题描述
我有一个来自 Salesforce 的一系列联系人的 csv,其中包含名称、位置和打开我需要下载的图像的 URL
到目前为止,我只能使用 Python 访问我的 Salesforce 实例,但我正在努力寻找一种使用 python 包的方法,不仅可以打开 URL,还可以下载 .jpg 格式的图像并使用名称和位置重命名的客户。
是否有任何可用的软件包可以让我这样做。我试过使用simple-salesforce
,但我认为它没有这个功能。
下面是我到目前为止的代码,它显示了一个查询,它返回我需要下载 ( URL_Fotograf_a_Cliente__c
) 的 URL 链接的所有联系人,但我没有比这更进一步的了
from simple_salesforce import Salesforce, SFType, SalesforceLogin
import pandas as pd
import json
from pprint import pprint as pp
session_id, instance = SalesforceLogin(username= username, password=password, security_token=security_token, sandbox=False)
print(session_id,instance)
sf = Salesforce(instance= instance, session_id=session_id)
SOQL= "SELECT Id, Name,C_digo_del_Usuario__c,Tratamiento_IPA__c,Estado__c,Municipio__c,Comunidad__c, URL_Fotograf_a_Cliente__c FROM Contact WHERE Tratamiento_IPA__c IN ('x', 'y', 'z')"
pp(sf.query(query = SOQL))
解决方案
simple_salesforce
是访问 Salesforce 的正确软件包,但您使用它的方式并不真正适合典型的途径。您无需触摸SalesforceLogin
或SFType
; 这些大多是内部的。做就是了
sf = Salesforce(username=username, password=password, security_token=security_token, sandbox=False)
然后,查询您的记录
records = sf.query("SELECT Id, Name,C_digo_del_Usuario__c,Tratamiento_IPA__c,Estado__c,Municipio__c,Comunidad__c, URL_Fotograf_a_Cliente__c FROM Contact WHERE Tratamiento_IPA__c IN ('x', 'y', 'z')")
for r in records.get("records"):
url = record["URL_Fotograf_a_Cliente__c"]
# Now, download the image and save it.
# other record details are available as, e.g., `record["Name"]`
您下载图像的具体方式取决于它是否托管在 Salesforce 上并且需要身份验证才能访问。我假设它只是一个外部 URL,在这种情况下,您可以使用requests
或您选择的库来请求数据并将其保存到磁盘。
推荐阅读
- java - Java 中嵌套循环的最大数量是多少?
- vbscript - VBScript 文件存在时
- c++ - std::regex 无法匹配 char
- background - Applescript:如何在后台“告诉”应用程序?
- python - 为什么两个或多个查询集的联合不能与 forms.ModelMultipleChoiceField 完美配合?
- android - Unity Admob 插件;当您尝试更改“TextMesh.text”时应用程序崩溃
- react-native - React Native:如何将阴影和边框半径应用于视图?
- android - 标签上的 ADB logcat 退出
- php - PHP合并数组并添加一个值
- angular - ASPNETCORE 反向代理将现有应用程序合并到新的 Angular SPA