我想通过调用Apify API来调用Apify参与者并指定一个参数值。
演员是谷歌搜索结果刮刀器。
这是医生们说的使用queries
作为API调用有效负载中的对象属性名称。
下表显示了由其输入模式定义的参与者输入字段的规范。这些字段可以是..。在使用API运行参与者时,在JSON对象中提供。在文档中读到更多。
..。
搜索查询或URL 谷歌搜索查询(如纽约的食品)和/或完整的网址(如https://www.google.com/search?q=food+NYC)。 每一行输入一项。 可选 类型:字符串 JSON示例“查询”:“NYC https://www.google.com/search?q=restaurants+in+NYC中的纽约餐馆的酒店”
在运行Google脚本代码之后,我希望看到searchQueries.term
参数中的更改如下。
Apify -我希望看到的
"searchQuery": {
"term": "Banks in Phoenix", // what I am trying to change to by API call
// [...]
},
但是,我实际得到的参数值与上次手动运行参与者时存在的参数值相同。详情如下。
我真正看到的是
"searchQuery": {
"term": "CPA firms in Newark", // remaining from last time I ran the actor manually
// [...]
},
这是我从Google脚本运行的代码。
Code.gs
const runSearch = () => {
const apiEndpoint= `https://api.apify.com/v2/actor-tasks/<MY-TASK-NAME>/run-sync?token=<MY-TOKEN>`
const formData = {
method: 'post',
queries: 'Banks in Phoenix',
};
const options = {
body: formData,
headers: {
'Content-Type': 'application/json',
},
};
UrlFetchApp.fetch(apiEndpoint, options,);
}
我做错了什么?
发布于 2020-04-06 19:13:42
您在payload
对象中缺少了request
属性。
更改:
queries: 'Banks in Phoenix',
至:
payload: {
queries: 'Banks in Phoenix',
}
Code.gs
const runSearch = () => {
const apiEndpoint= `https://api.apify.com/v2/actor-tasks/<MY-TASK-NAME>/run-sync?token=<MY-TOKEN>`
const formData = {
method: 'post',
payload: {
queries: 'Banks in Phoenix',
},
};
const options = {
body: formData,
headers: {
'Content-Type': 'application/json',
},
};
UrlFetchApp.fetch(apiEndpoint, options,);
}
https://stackoverflow.com/questions/61020081
复制相似问题