基于Python通过DOI下载文献(至简仅需2行代码)

文章目录

  • 一、安装库
  • 二、导入库
  • 三、准备doi
    • 3.1 excel法
      • 3.1.1 检索数据
      • 3.1.2 导出excel
    • 3.2 txt法
    • 3.3 列表or字符串法
      • 3.3.1 字符串
      • 3.3.2 列表
  • 四、下载
    • 4.1 脚本
    • 4.2 下载成功
    • 4.3 已存在
    • 4.4 至于失败的
  • 五、结果
    • 5.1 目标文件夹
    • 5.2 失败记录

一、安装库

pip install OAFuncs 

二、导入库

from OAFuncs.oa_down.refs_pdf import download5doi

三、准备doi

3.1 excel法

举例:通过WOS(Web of Science)导出doi

3.1.1 检索数据

在这里插入图片描述

3.1.2 导出excel

(1)Export->Excel

在这里插入图片描述

(2)根据需求设置,Export
在这里插入图片描述

(3)保存,WOS默认文件名应该是“savedrecs.xls” ,DOI默认标题在这里是“DOI”

爱存哪儿存哪儿吧,无所谓
在这里插入图片描述
注意:存在空行、缺失的情况,不用对excel进行整理删除等操作,交给代码即可,会自动处理

3.2 txt法

你愿意去哪儿搞去哪儿搞,反正如下格式即可
在这里插入图片描述

注意:允许doi之间出现空行,不影响正常下载,代码中有相关处理操作

3.3 列表or字符串法

适合少量下载,或者狠人

3.3.1 字符串

这是单doi的情况,直接在代码中传入单个doi字符串可行

3.3.2 列表

多个doi的情况,将一系列doi放入一个列表,传入下载函数即可

四、下载

4.1 脚本

from OAFuncs.oa_down.refs_pdf import download5doi     
# 没有提供存储路径的情况下,默认存在当前路径;路径如果本地不存在,会自动创建# 单个doi,你要乐意通过excel或txt也行  
download5doi(doi_list='10.3389/feart.2021.698876')
# or
download5doi(doi_list=['10.3389/feart.2021.698876'])# 单个doi,提供存储路径  
download5doi(store_path=r'I:\Delete\ref_pdf', doi_list='10.3389/feart.2021.698876')# 多个doi,列表法  
download5doi(doi_list=['10.3389/feart.2021.698876', '10.3389/feart.2021.698876'])# 随便多少doi,通过txt文件读取   
download5doi(txt_file=r'I:\Delete\ref_pdf\doi_record.txt')# 随便多少doi,通过excel文件读取,需要配合col_name,就是前面提到的列名,WOS默认"DOI",可使用默认值,如果不同,请提供
download5doi(excel_file=r'I:\Delete\ref_pdf\savedrecs.xls')# 随便多少doi,通过excel文件读取,需要配合col_name,就是前面提到的列名,WOS默认"DOI",可使用默认值,如果不同,请提供
download5doi(excel_file=r'I:\Delete\ref_pdf\savedrecs.xls', col_name='DOI')

4.2 下载成功

成功后你会绿,是的
在这里插入图片描述

4.3 已存在

已存在文献不会重复下载,它是紫的~
在这里插入图片描述

4.4 至于失败的

失败了低调一点,过段时间再下载也许能成?或者自己去浏览器单独下载吧
在这里插入图片描述

五、结果

5.1 目标文件夹

在这里插入图片描述

5.2 失败记录

失败的会写入目标文件夹下wrong_record.txt文件中
在这里插入图片描述
可能是网络问题,过段时间重新下载也许能行;
可重命名txt文件(这个文件名在代码中被占用了),尝试通过txt再次下载
实在下载不了另想他法吧,代码中下载渠道目前主要基于sci-hub (懂吧?)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/9576.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Git仓库

Git初始 概念 一个免费开源,分布式的代码版本控制系统,帮助开发团队维护代码 作用 记录代码内容,,切换代码版本,多人开发时高效合并代码内容 如何学: 个人本机使用:Git基础命令和概念 多…

excel常用技能

1.基础技能 1.1 下拉框设置 a. 选中需要设置的列或单元格,数据 ---》 数据验证 b.验证条件 ---> 序列(多个值逗号隔开) 2.函数 2.1 统计函数-count a.count(区域,区域,......) 统计数量,只针…

沙龙活动精彩回顾:攸信携手博格咨询,探索数智管理的奥秘

10月30日,一场聚焦数智管理的沙龙活动在热烈的氛围中圆满落幕。本次活动由攸信携手博格咨询共同举办,有幸邀请到了资深讲师书麟老师、攸信项目经理黄小容以及市场部经理高建成,他们共同为参会者带来了一场关于数智管理的知识盛宴。 01深入剖析…

17个工作必备的Python自动化代码

Python是一种流行的编程语言,以其简单性和可读性而闻名。因其能够提供大量的库和模块,它成为了自动化各种任务的绝佳选择。让我们进入自动化的世界,探索17个可以简化工作并节省时间精力的Python脚本。 1.自动化文件管理 1.1 对目录中的文件…

【IEEE/EI会议】第八届先进电子材料、计算机与软件工程国际学术会议(AEMCSE 2025)

会议通知 会议时间:2025年4月25-27日 会议地点:中国南京 会议官网:www.aemcse.org 会议简介 第八届先进电子材料、计算机与软件工程国际学术会议(AEMCSE 2025)由南京信息工程大学主办,将于2025年4月25日…

AndroidStudio-文本显示

一、设置文本的内容 1.方式&#xff1a; &#xff08;1&#xff09;在XML文件中通过属性&#xff1a;android:text设置文本 例如&#xff1a; <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.andr…

关于CountDownLatch失效问题

一、项目背景 这几天要开发一个类似支付宝那种年度账单统计的功能&#xff0c;就是到元旦后支付完会把用户这一年的消费情况从各个维度&#xff08;我们把这一个维度称作一个指标&#xff09;统计分析形成一张报告展示给用户。 这个功能实现用到了CountDownLatch。假如统计分析…

【含开题报告+文档+源码】基于SSM的物流管理系统设计与实现

开题报告 随着电子商务的迅猛发展和人们生活水平的提高&#xff0c;快递服务行业正经历着前所未有的增长。占航快递公司作为国内知名的快递企业之一&#xff0c;面临着巨大的机遇和挑战。传统的快递服务管理方式已经无法满足日益增长的业务需求&#xff0c;快递服务流程中的问…

【AtCoder】Beginner Contest 377-C.Avoid Knight Attack

Avoid Knight Attack 题目链接 Problem Statement There is a grid of N 2 N^2 N2 squares with N N N rows and N N N columns. Let ( i , j ) (i,j) (i,j) denote the square at the i i i-th row from the top ( 1 ≤ i ≤ N ) (1\leq i\leq N) (1≤i≤N) and j j…

sizeof和strlen区分,(好多例子)

sizeof算字节大小 带\0 strlen算字符串长度 \0之前

Javascript中如何实现函数缓存?函数缓存有哪些应用场景?

#一、是什么 函数缓存&#xff0c;就是将函数运算过的结果进行缓存 本质上就是用空间&#xff08;缓存存储&#xff09;换时间&#xff08;计算过程&#xff09; 常用于缓存数据计算结果和缓存对象 解释 const add (a,b) > ab; const calc memoize(add); // 函数缓存…

MATLAB实现智能水滴算法(Intelligent Water Drops Algorithm, IWDA)

1.智能水滴算法介绍 智能水滴算法&#xff08;Intelligent Water Drops Algorithm&#xff0c;IWDA&#xff09;是一种基于水滴特性的智能优化算法&#xff0c;它借鉴了水滴在自然界中的运动和形态变化规律&#xff0c;通过模拟水滴的形成、发展和消亡过程&#xff0c;实现问题…

(Go基础)Go的运行流程步骤与包的概念

1. 快速入门 所有的go开发&#xff0c;都必须存在并包含在某一个包内 .go 是go语言程序的后缀名 1.1 编译 通过使用 go build 命令对该go文件进行编译&#xff0c;生成.exe文件 1.2 运行 运行刚刚生成出来的test.exe文件既可&#xff0c;不过并不不是双击&#xff0c;而是在…

AI 写作(三)文本生成算法:创新与突破(3/10)

一、生成式与判别式模型&#xff1a;AI 写作的基石 &#xff08;一&#xff09;区别与特点 生成式模型和判别式模型在多个方面存在明显差异。在优化准则上&#xff0c;生成式模型致力于学习联合概率分布&#xff0c;而判别式模型则专注于建立输入数据和输出之间的关系&#xf…

ubuntu下使用pocketsphinx进行语音识别(包含交叉编译)

文章目录 前言一、pocketsphinx的介绍二、ubuntu下编译三、使用示例1.模型选择2.代码示例3.自定义字典 四、交叉编译总结 前言 由于工作需要语音识别的功能&#xff0c;环境是在linux arm版上&#xff0c;所以想先在ubuntu上跑起来看一看&#xff0c;就找了一下语音识别的开源…

中国自主品牌荣耀时刻:海豹荣获欧洲车身大奖

近日&#xff0c;在德国巴特瑙海姆举行的2024欧洲车身大会上&#xff0c;比亚迪海豹凭借其卓越的车身架构设计、创新技术和美学设计&#xff0c;一举斩获了本次大赛第三名的殊荣。 这不仅是中国自主品牌在欧洲车身大会上的首次获奖&#xff0c;而且也是比亚迪技术创新与实力在国…

RocketMQ 广播消息

所谓的广播消息就是发送的一条消息会被多个消费者收到。 ⼴播是向主题&#xff08; topic &#xff09;的所有订阅者发送消息。订阅同⼀个 topic 的多个消费者&#xff0c;能全量收到⽣产者发送的所有消息。 生产者发送了10个order&#xff0c;每个order里面有5个消息&#xff…

如何实现智慧园区的节能降耗?

江园科技智慧园区实现智慧园区节能降耗可以从以下几个方面入手&#xff1a; 能源监测与管理系统 - 安装智能电表、水表和气表等设备&#xff0c;实时精准地监测园区内各区域、各企业及各设备的能源消耗情况&#xff0c;如电量的峰谷时段使用量、用水量的波动等。这些数据会传输…

索引【MySQL】

文章目录 聚簇索引 VS 非聚簇索引索引MySQL与磁盘交互的基本单位主键索引索引操作唯一索引的创建普通索引的创建复合索引 索引创建原则 聚簇索引 VS 非聚簇索引 MyISAM存储引擎 - 主键索引结构 MyISAM存储引擎同样采用B树作为索引的基本数据结构 与InnoDB存储引擎的B树不同的…

CDH大数据平台部署

二、CDH简介 全称Cloudera’s Distribution Including Apache Hadoop。 hadoop的版本 (Apache、CDH、Hotonworks版本) 在公司中一般使用cdh多一些&#xff08;收费的&#xff09;、也有公司使用阿里云大数据平台、微软的大数据平台。 国内也有一些平台&#xff1a;星环大数…