当前位置:范文帮毕业论文内容页

Python技术在期刊评价的应用

2022-02-16 10:45:01毕业论文访问手机版

学术期刊一直是学术研究所关注的热点,近年来,学术期刊评价呈现出多元化发展态势,对相应的学术研究和学科发展起到重要的促进作用。目前,国内比较有影响力的评价体系有《中文核心期刊要目总览》、《中国人文社会科学核心期刊要览》、《中文社会科学引文索引》等。通过比较上述期刊评价体系中使用的评价指标,发现大部分的指标都是可以计算的定量指标,一些定性指标是定量化之后再参与计算[1,2]。这就为信息技术应用于期刊评价提供了可能,加上大数据时代的到来,数据的来源多样、数据量大的特点,使得信息技术加入期刊评价的行列更加必要。Python技术作为信息技术中的热门技术,将Python技术应用于期刊评价,可以扩展数据获取的来源、提高数据的准确率、增加定量指标的数量等,进而提高评价结果的可靠性。

1Python技术

Python是一种高级的计算机编程语言,是由GuidovanRossum在20世纪80年代末,荷兰国家数学和计算机科学研究所设计[3]。Python的语法结构简洁,在Python程序中没有太多的语法细节和规则要求,初学者可以从语法细节中摆脱出来,只需要专注于分析程序所需要的逻辑和算法即可。Python具有丰富的数据结构,除了基本的数值类型外,Python中还内置了字符串、列表、元组、字典、集合等丰富的高级数据结构,利用这些数据结构可以解决很多的实际应用问题,比如文本处理、数据分析等。Python是一种解释性语言,就是用Python编写的程序不需要编译成二进制代码,就可以直接运行源代码程序。由于Python具有语法优美、代码简洁、开发效率高、支持的模块多等优点,使其成为了当前很受欢迎的脚本语言,应用范围较广,包括网络爬虫、人工智能、网站以及手机应用开发、数据分析等,因为是免费开源的资源,因此具有更多的用户[4]。

2Python技术在数据获取中的应用

期刊评价工作中,首先需要有可以进行分析的数据。数据的获取通过Python技术编写网络爬虫程序来辅助进行数据的获取。网络爬虫就是按照一定的规则,自动地抓取互联网信息的程序[5]。网络爬虫可以获取更多的数据源,并且这些数据源是根据需求进行的采集,可以去掉很多无关数据。通过爬虫技术爬取数据,实际上就是向服务器请求数据,获取响应数据的过程[6]。Chrome开发者工具是一套内置于GoogleChrome中的Web开发和调试工具,可以用来对网站进行迭代、调试和分析。Chrome开发者工具在整个爬虫过程中作用很大,可以辅助用户爬取信息、分析页面和处理反扒。比较常用的模块有元素面板(elements)、控制台面板(console)、资源面板(source)、网络面板(network)。通过元素面板,能查看到想抓取页面渲染内容所在的标签、使用什么css属性等内容,可以为网页内容提取提供相关的解析语句。控制台面板(console)可以调试运行js代码,在js解密过程中比较常用。资源面板主要是进行js断点调试。网络面板记录页面上每个网络操作的相关信息,包括详细的耗时数据、HTTP请求与响应标头和Cookie等,就是通常说的抓包。通过抓包就可以向服务器获取请求数据所需要的地址、请求头(包括host、refer、origin、user-agent、Cookie等)、查询参数、请求参数等,进而使用爬虫程序来请求服务器的数据。请求到数据之后,进行内容信息的提取,提取的内容就是需要获取的数据,共有3种解析方式包括正则表达式、css选择器和xpath。正则表达式,又称规则表达式,属于计算机科学中的概念,在代码中常被简写为regex、regexp或RE。正则表达式通常被用来检索、替换那些符合某个模式或规则的文本。使用正则表达式,可以检查字符串的合法性,可以提取字符串中的信息,比如提取一条短信中的数字或提取文件名的后缀等,也可以替换或分割字符串等。在爬虫程序中,主要使用正则表达式提取所需要的数据以去掉多余的数据[5]。在正则表达式中,使用元字符匹配单个字符,比如使用\d表示匹配数字,使用点匹配任意一个字符(除了\n),使用+*表示匹配多个字符,使用.*表示匹配任意多个字符,使用[]表示匹配[]中列举的字符等等。在CSS中,选择器是一种模式,用于选择需要添加样式的元素。因此,可以使用CSS选择器,在HTML页面中找到数据所对应的标签。在CSS选择器中,常用的有标签选择器、类选择器、ID选择器、组合选择器、属性提取器等。Xpath(XMLPathLanguage)是一种在HTML\XML文档中查找信息的语言,可以用来在HTML\XML文档中遍历其元素和属性。可以使用Xpath来快速定位HTML\XML文档中的特定元素以及获取节点信息,从而可以提取出所需要的数据。Xpath主要是使用路径表达式来选取XML文档中的节点或节点集。这些路径表达式类似于电脑文件系统中看到的表达式。遇到复杂的提取规则可以这3种方式混合使用[7]。采集到数据之后,需要保存数据,数据存储类型有分文本文件和二进制文件(包括音频、图片、视频文件等),数据的保存形式有Excel、Json、Csv,也可以直接与数据库连接存储到数据库中。期刊评价需要的数据会分布在不同的数据源中,可以针对不同的数据源编写相应的爬虫程序,进而获取所需要的数据。在期刊评价中可以通过网络爬虫获取的字段有标题、作者、地址、页码、年份、卷期、分类号、引用次数、下载次数、参考文献、引用文献、二次文献转载次数、期刊微信公众号中的阅读量与点赞量等,通过将这些字段进行计算,就可以得到评价期刊的指标值,比如总被引频次、篇均被引频次、5年影响因子、高被引文献量、自引量、社交媒体传播情况等。期刊评价的结果正是基于这些指标的计算。

3Python技术在数据清洗中的应用

数据的准确性对于评价结果的正确性、客观性起着举足轻重的作用。因此,数据计算之前需要对数据的内容进行清洗、优化,目的是删除重复信息、纠正错误信息、并提供数据的一致性。由于原始数据包含有非学术论文,例如征稿通知、启事、会议纪要等类型内容,故需要进行清洗。数据清洗的任务是清洗掉不符合要求的数据,不符合要求的数据主要有不完整的数据、错误或无效的数据、重复的数据3大类[8]。清洗内容包括检查数据一致性、处理重复文献、无效文献和文献信息不完整的瑕疵文献等。其中,一致性检查是指检查原始数据表格中下载文献总量与数据库服务商中原始文献数量的一致性;检查数据内容的一致性是指由于数据是单一途径数据,不存在数据组合问题,故而内容具有一致性。重复文献处理:通过Python程序检查有无重复文献,若有,则删除之;无效文献和瑕疵文献处理:根据无关文献判定准则和瑕疵文献的重要性判断准则通过Python程序删除,其中无关文献判定准则是:(1)原始文献数据中题名含有“动态”、“研讨会”、“悼念”、“短讯”、“征稿”、“工作会议”、“出席会议”、“纪要”、“纪事”、“会议综述”、“启事”等停用词的则删除整条文献数据记录;(2)原始文献数据中所属专题含有“人物传记”字样,则删除整条文献数据记录;(3)原始文献数据中作者为空的,则删除整条文献数据记录。在期刊评价中,有效的文献均为学术论文,根据大量数据的核验与判断,得到了数据清洗时用到的停用词集合:“动态”、“研讨会”、“悼念”、“短讯”、“征稿”、“工作会议”、“出席会议”、“纪要'”、“纪事”、“会议”、“综述”、“启事”、“订阅”、“入选”、“召开”、“座谈”、“会”、“年会”等。数据清洗的过程虽然在数据量较少、清洗步骤比较简单时,可以用Excel替代完成,但是一旦数据量大、清洗规则较多时,使用Excel就没有那么得心应手了,比如运行速度会明显下降、操作步骤也复杂得多。在期刊评价中,如果需要计算全周期的影响因子之类的指标,这类指标的计算需要用到期刊创刊以来的数据,数据量还是很大的,所以使用Python技术进行数据清洗是十分有必要的。

4Python技术在数据合并与计算中的应用

在期刊评价中,一个指标的数值可能存在多个数据源,那么就需要进行数据的合并。比如:二次文献转载量这个指标,可能需要采集包括人大复印报刊资料、新华文摘等不同来源的转载次数,那么就需要将这些数据进行合并。人工合并这些数据不但工作量大,而且容易出错。使用Python技术来进行数据合并,节省时间,也可以降低出错率,更重要的是工作可以复用,相似处理模式的数据可以稍微修改程序直接使用,人工处理就必须重新完整地走完全部流程,可谓是费时费力。数据的计算则是按照指标定义,理清其逻辑关系进行代码编写,最终实现数据的自动化处理。以下列举部分数据计算方法:综合总被引频次:评价周期内,该期刊所载全部学术论文被期刊论文引用的次数总和。复合总被引频次:评价周期内,该期刊所载全部学术论文被期刊文献、博硕士论文、专著、报纸引用的次数总和。篇均综合被引频次:评价周期内,该期刊的综合被引频次除以该期刊所载文献总量。篇均复合被引频次:评价周期内,该期刊的复合被引频次除以该期刊所载文献总量。5年综合影响因子:该期刊5年中所有文献被期刊文献在当年的被引频次除以该刊近5年内的发文量。5年复合影响因子:该期刊近5年中所有文献被期刊文献、博硕士论文、专著、报纸在当年的被引频次之和除以该刊近5年内所载文献总量。高被引文献量:评价周期内,该期刊所载全部文献被包含在被引频次TOP10%的数量。高被引文献率:评价周期内,该期刊所载全部文献被包含在被引频次TOP10%的数量除以评价周期内该刊所载文献总量。自被引量:评价周期内,通过获取到的引证文献集合,筛选出该期刊引用本刊文献的数量。自被引率:评价周期内,通过获取到的引证文献集合,筛选出该期刊引用本刊文献的数量除以该期刊的总被引频次。Web下载量:评价周期内,该期刊所载全部学术论文中,在数据库出版并上网的论文被全文下载的次数。作者人数:评价周期内,该期刊所有文献所包含的作者数量。

5结语

在大数据时代,期刊评价也呈现出多元化发展态势,这就说明所需要的数据也是多元化的,并且数据量大,那么势必要求使用信息技术。比如Python技术来进行数据的一系列处理,包括数据获取、清洗、合并、计算等,进而提高了工作效率。有了Python技术的助力,期刊评价工作可以扩大数据的多元化范围,增加可量化指标的数量,提高数据的准确性,最终使得评价结果的可靠性更高。