我正在创建一个Python脚本,用于从Salesforce以CSV格式下载报告。
我的脚本在Salesforce Classic上运行得很好。然而,我需要让它在Lightning Experience中工作。我使用simple-salesforce Python包来访问我们的组织。对于SF Classic,我输入一个结构如下的链接:https://my-company.my.salesforce.com/my_report_id?view=d&snip&export=1&enc=UTF-8&xf=csv
脚本基本上是这样的:
from simple-salesforce import Salesforce
import requests
import pandas as pd
import csv
from io import StringIO
sf = Salesforce(username="my_username", password="my_password",
security_token="my_token")
sf_org = "https://my_company.my.salesforce.com/"
report_id = "0000" # Some report id
sf_report_loc = "{0}{1}?view=d&snip&export=1&enc=UTF-8&xf=csv".format(sf_org, report_id)
response = requests.get(sf_report_loc, headers=sf.headers, cookies={"sid": sf.session_id})
new_report = response.content.decode("utf-8")
df = pd.read_csv(StringIO(new_report)) # Save the report to a DataFrame.每当我切换到Lightning时,链接都是无效的,并且我会被重定向。有没有办法在Lightning中做到这一点?
发布于 2019-08-21 14:09:43
尝试使用isdtp参数。在经典中,它被用来强制查看没有侧边栏或页眉的页面,例如,将isdtp=vw添加到随机页面并查看会发生什么。
https://my_company.my.salesforce.com/00O.....?isdtp=p1&export=1&enc=UTF-8&xf=csv?
(不知道什么是'p1‘,但这是我在Chrome的下载历史中看到的,它是报告源网址的一部分)
https://stackoverflow.com/questions/57575852
复制相似问题