我正在编写一个Python脚本,以使用python-omniture软件包从Adobe Analytics(以前称为Omniture)检索一些分析数据。
我执行身份验证:
aa = omniture.authenticate("%s:%s" % (aa_username, aa_company), aa_secret)
我访问所需的特定报告套件(如果有):
if len(aa.suites) > 0:
if aa_suite in map(lambda x: x.id, aa.suites):
rs = aa.suites[aa_suite]
else:
raise Exception("[aa] no '%s' suite found" % aa_suite)
else:
raise Exception("[aa] no report suites found")
并检索该特定报告套件的所有可用元素,指标和细分(例如,出于目的):
if "rs" in locals():
t_e = rs.elements
t_m = rs.metrics
t_s = rs.segments
此后,我得到了这个异常:
UnicodeEncodeError: 'ascii' codec can't encode character u'\xf3' in position 30: ordinal not in range(128)
发生与指标或细分有关的问题。检索元素很好,但是我怀疑这只是运气(或者确切地说,是对元素进行正确编码或解码的问题)。
我(主要在SO中)读到Unicode是使用Python编程时的常见痛点之一(我不到一个月前开始使用Python进行编码,所以我不是专家)。
我知道有一种encode
方法可以对像这样的字符串进行编码:s.encode("utf-8")
,但是我的问题是我现在唯一要做的事情是设置软件包以从Adobe Analytics API检索数据
我总是可以在GitHub页面上为此软件包打开一个问题,但是我想知道是否有什么我可以自己解决的,而无需篡改该软件包。
你能给我一个提示吗?