Return Microsoft Academic 的正确引用次数 API

Return correct number of citations from Microsoft Academic API

我正在尝试使用 Microsoft Academic API 获取多位作者的引用计数。但是,我发现我的手动搜索检索到的结果与 API 调用不同。例如,作者 Laurens van der Maaten 似乎有 40,747 次引用(参见 here)。但是,当我尝试使用如下所示的 API 调用时(使用 Python),我得到的结果较少。

import requests

def get_author_CC(subscription_key, author_name):
    url = 'https://api.labs.cognitive.microsoft.com/academic/v1.0/evaluate'
    params = {
        "expr": f"Composite(AA.AuN=='{author_name}')",
        "attributes": "CC"
    }
    headers = {'Ocp-Apim-Subscription-Key': subscription_key}

    r = requests.get(url, params=params, headers=headers).json().get('entities')
    
    return sum([ld.get('CC') for ld in r])

get_author_CC(subscription_key="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", author_name="laurens van der maaten")
>>> 26545

是否有参数或我遗漏的东西?谢谢

阅读文档后,我认为您需要使用 ECC,这是估计的引用计数。此外,您需要在 params 中提供 count,因为默认值为 count=10

import requests

def get_author_CC(subscription_key, author_name):
    url = 'https://api.labs.cognitive.microsoft.com/academic/v1.0/evaluate'
    params = {
        "expr": f"Composite(AA.AuN=='{author_name}')",
        "attributes": "ECC,CC",
        'count': 10000
    }
    headers = {'Ocp-Apim-Subscription-Key': subscription_key}

    r = requests.get(url, params=params, headers=headers).json().get('entities')
    
    return sum([ld.get('ECC') for ld in r])

get_author_CC(subscription_key="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", author_name="laurens van der maaten")