两行命令-批量快速整理google scholar检索结果

知道我的朋友应该比较清楚,事实上,我【主导 / 参与】开发了不少小工具(很多时候,我似乎并不愿意称之为软件,毕竟我始终觉得他们的实现过于naive)。不过,鉴于我所实现的功能几乎是基于数据分析高频且常见的需求,所以这些工具,往往会有一定的用户量。其中有一小部分是已经对外开放:

  • TBtools

  • EasyCodeML

  • IGV-sRNA

  • ....

事实上,还有更多,但鉴于各种各样的原因,我自认为不释放反而是一个好事。Anyway,工具释放了,用户量有了。但是,没有正式发表的工作,无法被正式引用。有时候,我们希望:

  1. 看看到底我们写的小工具是否有人在工作中使用

  2. 看看到底多少人由于不知道预印本的存在而引用的是软件连接,或者只是直接提到软件名字而没有任何引用

  3. 看看到底他们都用在什么地方【此处,我们需要论文中相关的文字部分】

以上,我们可以很简单的在google scholar中检索到,如下

我们可以看到,预印本被引用了71次,然而事实上,应该是存在216个检索结果(其中应是150+个检索结果是预印本发表之后的;如果你花点时间看看,就会发现多数是引用了链接)

于是,对于各位写了软件,公开使用,想知道谁用了你的软件来干啥的,我们可以写两个命令,快速且批量地整理检索结果。得到如下:

具体操作

进入google scholar,进行一定的检索,得到相对满意的答案后,复制链接

https://scholar.google.com/scholar?as_vis=1&q=%22TBtools%22&hl=en&as_sdt=1,31&as_ylo=2016

基于上述,我们知道一共是有206个检索结果【206~~ 这两天似乎多了10个citations....】
找一个能访问到google的主机,如Digital Ocean的主机上运行,运行,【其中TotalRecord,各位自行计算 206%10*10】

先写一行命令下载具体记录信息【注意,linux和ping同google scolar的主机才有用】

totalRecord=200
breakTime=3
for start in `seq 0 10 $totalRecord`;do wget -e robots=off -H --user-agent="Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.3) Gecko/2008092416 Firefox/3.0.3" -nd "https://scholar.google.com/scholar?as_vis=1&start=$start&q=%22TBtools%22&hl=en&as_sdt=1,31&as_ylo=2016" -O google.$start.info;
sleep $breakTime;
done

再写一行命令,整理信息

for file in google.*;do perl -0777 -lne 'print s/[\r\n]//gr."\n" for map {m#<h3.*?>.*?<a.*?>(.+?)</a></h3>.*?<div class="gs_a">(.*?)</div>.*?<div class="gs_rs">(.*?)</div>#gs} $_' $file|paste - - - ;done > merged.info.xls

如果,你需要使检索结果看起来好看一点,那么我这里附加两个小命令

# 去除一些链接符号,注意保留为.tab结尾,以免excel错误解析
perl -lpe 's/<.*?>//g' merged.info.xls > merged.info.mod.tab
# 分离作者信息和期刊信息
perl -F'\t' -lane '$F[1]=~/^(.*)-(.*?), (\d+) - (.*)$/;print join qq{\t},$F[0],$1,$2,$3,$4,$F[2]' merged.info.mod.tab > merged.info.mod.tab.split
# 转换为中文编码,方便后续处理
iconv -t GB2312 -f UTF-8 -c merged.info.mod.tab.split > merged.info.mod.tab.split.xls

当然,上述得到的是TBtools相关的信息,我完全可以简单修改,得到EasyCodeML的被引用情况。甚至,我.....可以用于整理任何google scholar的检索结果....比如我检索“RNAseq”....

写在后面

说了过几天写,于是我过几天就真的写了。这应是一件非常简单的事情...需要的是基本的linux基础知识,还有一点文本处理能力。
无论如何,祝大家科研顺利。

(0)

相关推荐

  • 谷歌学术(Google Scholar)免费查文献、引用、作者和领域分析

    https://scholar.google.com/ 谷歌学术,是目前最大的文献索引数据库,没有之一.因为它不仅包括英文文献,而且抓取了世界上各国各语言几乎全部的电子出版物.通常文章发表后不出1周就 ...

  • 如何把1000个文件名快速整理成一份目录?仅需1条小命令即可

    干过办公室工作的朋友都会有这样的感触:每天忙于处理大批量的文件管理,不管是纸质版还是电子版的,一整天下来都会让你疲惫不堪,不知不觉中总会感觉到累. 今天,同事小林就整理350个视频文件的名称为一份目录 ...

  • 6个批量快速处理PPT的技巧,一旦学会,效率提高100倍!

    工作效率低,事情永远都做不完?这就意味着大家要学习提升啦 这不~今天小课就教大家6个批量快速处理PPT的技巧!帮大家效率蹭蹭上涨! 1 批量添加水印(母版) PPT想要加logo?一些公司的文件,少不 ...

  • Excel表格快速整理,30秒搞定你1小时工作!

    与 30万 读者一起学Excel VIP学员的问题,左边是原始表格,内容非常多,要整理成右边的形式,通过筛选水果,就可以获取相应的数据. 卢子看完试了好几种方法,发现这种方法最简单. Step 01 ...

  • 织梦通过SQL命令批量删除文章内容里所有超链接

    我们在采集文章时有时过滤不严谨,导致采集的文章内容中有多个超链接,这时我们可以用SQL命令批量删除文章内容里的超链接. 注意:操作前请先备份一下数据库 后台-系统-SQL命令行工具 执行下列命令,如果 ...

  • Excel批量快速填充空白单元格内容

    Excel快速填充空白单元格内容

  • 快速整理合并单元格

    小伙伴们好啊,咱们经常说尽量不使用合并单元格,否则就是给自己挖坑.那么对已有合并单元格的工作表,如何进行整理呢? 接下来就看看三种青年的不同方法吧. 二逼青年: 重新输入一次,顺便练练传说中的盲打- ...

  • 百家号的周报阅读、播放等数据快速整理方法

    很多人都在问百家号的相关数据应该如何去进行一个整理,如果靠自己一点一点去整理效率就非常低,所以需要怎么做才能提高效率呢?这里就教大家一个简单方法,一起来学习吧! 工具/原料 联想ThinkPad P1 ...

  • Excel小技巧:多张表快速整理到一张表中

    Excel办公效率是众所周知的,几乎可以处理任何数据,也可以按照需求对数据做出修改.不知大家有没有遇到这种情况,把多张工具表数据整理到一个表中.这里,小编为大家详细介绍一下如何去做. 1.工作簿中有多 ...

  • 小红书音乐号:0成本批量快速起号,适合新手变现操作!

    说起小红书大家应该都比较熟悉,在之前的内容中我已经给大家讲过关于小红书的多种知识.没错,今天要给大家分享的内容是新手如何批量操作小红书音乐号进行变现.为什么要推荐大家做小红书音乐号? 原因很简单,音乐 ...