如何在用户级别获得某个日期范围内所有未接受的答案?



我可以使用下面的 curl 命令检索给定日期范围内所有答案的列表:

curl "https://api.stackexchange.com/2.2/users/10348758/answers?page=1&pagesize=100&fromdate=1588291200&todate=1592179200&order=desc&sort=activity&site=stackoverflow&access_token=my-access-token&key=my-key" | gunzip

我需要找到给定日期范围内未接受的答案列表。

根据文档,这些字段可以应用于答案类型。

在文档中,写道:

只能查询已投票

、已投票和已接受字段 具有private_info范围的access_token。

因此,我还创建了范围private_infoaccess_token

我通过以下方式修改了我的命令:

curl "https://api.stackexchange.com/2.2/users/10348758/answers?is_accepted=false?page=1&pagesize=100&fromdate=1588291200&todate=1592179200&order=desc&sort=activity&site=stackoverflow" | gunzip

在上面的命令中,我添加了is_accepted=false参数,但我得到的结果与上面的命令相同,即我得到了一个完整的答案列表。我只想检索那些不被接受的答案(在给定的日期范围内(。是否需要在curl命令中应用筛选器?

如何使用 Stack Exchange API 检索所有未接受答案的列表(在给定日期范围内(?

is_accepted

是其中一个字段。而且,在当前阶段,这似乎不能用于将结果值作为查询参数进行过滤。

在这种情况下,以下解决方法如何?我想建议使用jq来过滤检索到的值。在此解决方法中,使用jq从所有检索到的值中检索带is_accepted: false的值。

示例命令:

curl "https://api.stackexchange.com/2.2/users/10348758/answers?page=1&pagesize=100&fromdate=1588291200&todate=1592179200&order=desc&sort=activity&site=stackoverflow&access_token=my-access-token&key=my-key" | gunzip | jq '[.items[] | select(.is_accepted == false)]'
  • 在这种情况下,jq '[.items[] | select(.is_accepted == false)]'用于检索到的值。
  • 通过此修改,将检索带有"is_accepted": false的值。

注意:

  • 在此修改中,它假定您的访问令牌和密钥可用于请求https://api.stackexchange.com/2.2/users/10348758/answers

引用:

  • /answers/{ids} 的用法
  • JQ

相关内容

  • 没有找到相关文章

最新更新