Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bing网站管理员工具API与Python-如何指定提取日期和分页索引?_Python_Api_Date_Pagination_Bing Webmaster Tools - Fatal编程技术网

Bing网站管理员工具API与Python-如何指定提取日期和分页索引?

Bing网站管理员工具API与Python-如何指定提取日期和分页索引?,python,api,date,pagination,bing-webmaster-tools,Python,Api,Date,Pagination,Bing Webmaster Tools,为了帮助我们的一位客户,我创建了一个脚本,使用Python从Bing网站管理员工具API提取搜索查询统计信息,如下所示: rq = requests.get(u"https://ssl.bing.com/webmaster/api.svc/json/GetQueryStats?apikey=%s&siteUrl=%s" % (bwt_api_key, bwt_site_url)) if rq.status_code == 200: rs = json.loa

为了帮助我们的一位客户,我创建了一个脚本,使用Python从Bing网站管理员工具API提取搜索查询统计信息,如下所示:

rq = requests.get(u"https://ssl.bing.com/webmaster/api.svc/json/GetQueryStats?apikey=%s&siteUrl=%s" % (bwt_api_key, bwt_site_url))

if rq.status_code == 200:
    rs = json.loads(rq.text)

    if "d" in rs.keys():
        z = []

        for ri in rs["d"]:
            z.append([
                datetime.fromtimestamp(int(re.search("/Date\\((.*)\\)/", ri["Date"]).group(1)) // 1000).strftime("%Y-%m-%d"),
                ri["Query"],
                ri["AvgClickPosition"] / 10,
                ri["AvgImpressionPosition"] / 10,
                ri["Clicks"],
                ri["Impressions"]
            ])
撇开命名惯例和标准不谈(我知道还有很多改进的余地,但这只是一个简单的例子),我将API键作为bwt_API_键传递,并在bwt_site_URL中传递站点URL,它可以工作。到目前为止,一切顺利

问题是,除了siteUrl之外,我没有发现此API方法(GetQueryStats)的其他参数的踪迹,并且为了能够加载历史数据,我需要传递某种日期,到目前为止,我没有运气

我想知道是否可以为这个方法指定开始和结束日期,或者至少指定一个日期来按日期过滤结果。另一件让我恼火的事情是,我(显然)没有办法对大型结果进行分页(如果适用的话)

现在,我只有一天的数据(我在上周五为一个博客激活了Bing网站管理员工具,因此,如果它的工作方式与谷歌搜索控制台相同,那么数据要到48小时后才能整合,因此用3天的时间来查询它似乎是正确的)但是我只得到了100行数据,我不知道这是因为我们测试站点(一个博客)的流量很低,还是因为API的一些限制。老实说,我有点困惑

最后,我想做的是我为谷歌搜索控制台执行的相同提取:搜索查询性能与URL、查询、点击和印象。在我看来,GetQueryStats是正确的方法,但我可能错了。你能帮我一下吗