问题标签 [google-scholar]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 为什么urlopen可以下载谷歌搜索页面,但不能下载谷歌学术搜索页面?
我正在使用Python 3.2.3 的 urllib.request
模块来下载 Google 搜索结果,但我遇到了一个奇怪的错误,它urlopen
适用于 Google 搜索结果的链接,但不适用于 Google Scholar。在此示例中,我正在搜索"JOHN SMITH"
. 此代码成功打印 HTML:
但是这段代码,对谷歌学术做同样的事情,引发了一个URLError
异常:
追溯:
我通过在 Chrome 中搜索并从那里复制链接获得了这些链接。一位评论者报告了 403 错误,我有时也会遇到。我认为这是因为 Google 不支持 Scholar 的抓取。但是,更改用户代理字符串并不能解决这个问题或原始问题,因为我URLErrors
大部分时间都得到了。
python - 使用 Python(或 R)提取 Google Scholar 结果
我想使用 python 来抓取 google 学者搜索结果。我找到了两个不同的脚本来做到这一点,一个是gscholar.py,另一个是scholar.py
(那个可以用作 python 库吗?)。
现在,我也许应该说我对 python 完全陌生,如果我错过了显而易见的事情,我很抱歉!
问题是当我gscholar.py
按照自述文件中的说明使用时,我得到了结果
query() takes at least 2 arguments (1 given)
.
即使我指定另一个参数(例如gscholar.query("my query", allresults=True)
,我得到
query() takes at least 2 arguments (2 given)
.
这让我很困惑。我还尝试指定第三个可能的参数(outformat=4
; 这是 BibTex 格式),但这给了我一个函数错误列表。一位同事建议我在运行查询之前导入 BeautifulSoup 和this,但这也不会改变问题。任何建议如何解决这个问题?
我找到了 R 的代码(参见链接)作为解决方案,但很快就被谷歌阻止了。也许有人可以建议如何改进该代码以避免被阻止?任何帮助,将不胜感激!谢谢!
bibtex - 批量下载bibtex数据?
有没有办法从 Google Scholar 或其他地方批量下载 bibtex 数据?
我尝试了一些 GS Scraper,例如 https://github.com/gimoya/theBioBucket-Archives/blob/master/R/Functions/GScholarScraper_3.1.R
但他们都不能下载 bibtex 文件。获取文件需要一个神秘的scisig密钥。
我也试过 Jabref。它可以批量获取 bibtex 文件。但是GS中的高级搜索功能都被禁用了。
感谢您的任何指示。
python - 从谷歌学者中提取文本
我正在尝试从谷歌学者为特定查询提供的测试片段中提取文本。文本片段是指标题下方的文本(黑色字母)。目前我正在尝试使用python从html文件中提取它,但它包含很多额外的测试,例如
/div><div class="gs_fl"
...ETC。
有没有一种简单的方法或一些代码可以帮助我在没有这些冗余文本的情况下获取文本。
java - Java web-scraper 看到验证码
我用 JSoup 为 Java 中的 Google Scholar 制作了一个网络爬虫。刮板在 Scholar 中搜索 DOI 并找到本文的引文。研究需要这些数据。
但是,刮板仅适用于第一个请求。.. 之后,刮板会在 Scholar 网站上遇到验证码。
但是,当我在浏览器 (Chrome) 中打开网站时,Google Scholar 会正常打开。
这怎么可能?所有请求都来自同一个 IP 地址!到目前为止,我已经尝试了以下选项:
- 为请求选择一个随机用户代理(从 5 个用户代理的列表中)
- 请求之间的随机延迟在 5-50 秒之间
- 使用 TOR 代理。然而几乎所有的终端节点都已经被谷歌屏蔽了
当我分析 Chrome 向 Scholar 发出的请求时,我发现 cookie 与某些会话 ID 一起使用。可能这就是 Chrome 请求未被阻止的原因。是否可以将此 cookie 用于使用 JSoup 发出的请求?
谢谢!
citations - Google Scholar:获取被引用论文的链接(未被引用)
这似乎是一个愚蠢的问题,但我一直在寻找这个问题已经有一段时间了,但没有发现任何有用的东西。我想下载给定论文中引用的所有论文。谷歌学术有这样的功能吗?或者甚至只是一个列出所有引用论文链接的页面?
python - Errno 11004 使用 urllib2 而不是 httplib 获取地址信息
我是python新手,正在尝试使用scholar.py和TOR构建一个谷歌学术刮板。不幸的是,当我运行下面的代码时:
一切都很好,并且返回了 IP 地址。但是,如果我放弃:
并将其替换为
然后我收到错误消息:“URLError urlopen 错误 [Errno 11004] getaddrinfo failed。”
Academic.py 使用 urllib2,所以我需要它来工作。任何想法表示赞赏。
python - 为什么我在尝试从 Google Scholar 抓取数据时得到重复输出?
我正在尝试从 Google Scholar 的搜索结果中抓取 PDF 链接。我试图根据 URL 的变化设置页面计数器,但是在前八个输出链接之后,我得到了重复的链接作为输出。
python - 将 bibtex 库与新的 google 学者库同步
有没有一种简单的方法可以将我的本地 bibtex 文件与谷歌学者中的新“我的图书馆”同步?换句话说,我正在寻找一种从我的学术图书馆生成 bibtex 文件的方法,而无需导出列表的每个条目。
google-scholar - 如何获取所有引用 Google Scholar 论文的论文
我想找到所有引用特定论文的论文(例如,在随机图上已被引用 4531 次)
具体来说,我想要所有
可以解析的论文的标题和引用编号,但我不知道如何获取所有结果 html,因为谷歌在一页上只显示 10 篇论文。所以我想要一种下载所有结果页面的方法。