gpt4 book ai didi

python - Matomo 以前的 Piwik API.getBulkRequest 返回空列表

转载 作者:行者123 更新时间:2023-12-01 02:10:48 24 4
gpt4 key购买 nike

这真的很奇怪:API.getBulkRequest 不适用于 python 请求

如果我在浏览器中尝试同样的操作,效果很好。

如果我尝试在 python 中执行任何其他 matomo 请求,它工作正常。

这是我的代码:

对于网址,我只是使用了 Matomo 报告 API 引用中的示例。

import requests

urls = [
'method%3dVisitsSummary.get%26idSite%3d1%26date%3d2012-03-06%26period%3dday',
'method%3dVisitorInterest.getNumberOfVisitsPerVisitDuration%26idSite%3d1%26date%3d2012-03-06%26period%3dday']
params = {
'method': 'API.getBulkRequest',
'urls': urls,
'format': 'json',
'module': 'API',
'token_auth': MATOMO_SECRECT_TOKEN,
}
r = requests.post(api_url, params)
print(r)
print(r.json())

Result:
<Response [200]>
[]

有人能看出明显的错误吗?

最佳答案

以下方法有效:

import requests

api_url="https://demo.matomo.org/"

params = {
'method': 'API.getBulkRequest',
'urls[0]': 'method%3dVisitsSummary.get%26idSite%3d3%26date%3d2012-03-06%26period%3dday',
'urls[1]': 'method%3dVisitorInterest.getNumberOfVisitsPerVisitDuration%26idSite%3d3%26date%3d2012-03-06%26period%3dday',
'format': 'json',
'module': 'API',
'token_auth': "anonymous",
}
r = requests.post(api_url, params)
print(r)
print(r.json())

&urls[0]=test&urls[1]=test 对于 PHP 来说有点特殊,请求不会自动生成这样的结构。

您可以添加这样的参数:

for index, url in enumerate(urls):
params["urls[{count}]".format(count=index)] = url

关于python - Matomo 以前的 Piwik API.getBulkRequest 返回空列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48711996/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com