gpt4 book ai didi

wolfram-mathematica - 谁能分享一个使用 Mathematica 和 Google Scholar 提取学术研究信息的简单例子

转载 作者:行者123 更新时间:2023-12-03 01:58:10 26 4
gpt4 key购买 nike

如何使用 Mathematica 和 Google Scholar 查找某人在 2011 年发表的论文数量?

最佳答案

Google Scholar 不太适合这个目标,因为它没有正式的 API AFAIK。它还不提供结构化(例如 XML)格式的结果。因此,我们必须求助于一种快速(而且非常非常脆弱!)的文本模式匹配技巧,例如:

 searchGoogleScholarAuthor[author_String] := 
First[StringCases[
Import["http://scholar.google.com/scholar?start=0&num=1&q=" <>
StringDrop[
StringJoin @@ ("author:" <> # <> "+" & /@
StringSplit[author]), -1] <> "&hl=en&as_sdt=1,5"], ___ ~~
"Results" ~~ ___ ~~ "of about" ~~ Shortest[___] ~~
p : Longest[(DigitCharacter | ",") ..] ~~ ___ ~~ "." ~~ ___ ~~
"(" ~~ ___ :> p]]

In[191]:= searchGoogleScholarAuthor["A Einstein"]

Out[191]= "6,400"

In[190]:= searchGoogleScholarAuthor["Einstein"]

Out[190]= "9,400"

In[192]:= searchGoogleScholarAuthor["Wizard"]

Out[192]= "197"

In[193]:= searchGoogleScholarAuthor["Vries"]

Out[193]= "70,700"

添加ToExpression如果您不喜欢字符串结果。如果你想限制出版年份可以添加&as_ylo=2011&as_yhi=2011&到搜索字符串并更改开始和结束年份 适本地。

请注意,具有流行名字的作者会产生大量虚假点击,因为无法唯一地识别单个作者。此外,Scholar 还返回各种热门内容,包括引文、书籍、重印等。所以,实际上,这对于计数来说并不是很有用。

一些解释:

Scholar 将作者和合著者的姓名首字母和姓名拆分为多个 author:字段与 + 组合。 StringDrop[StringJoin @@ ("author:" <> # <> "+" & /@ StringSplit[author]), -1]部分代码负责处理这个问题。 StringDrop删除最后一个 +

Stringcases部分包含一个大文本模式,它基本上搜索 Scholar 放置在每个结果页面顶部的文本,并包含点击数。然后该号码被隔离并返回。

关于wolfram-mathematica - 谁能分享一个使用 Mathematica 和 Google Scholar 提取学术研究信息的简单例子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6109520/

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