没有合适的资源?快使用搜索试试~ 我知道了~
软件影响16(2023)100496原始软件出版物Garuda:一个轻量级的tweet收集器工具AnnabelleGillet,Mickael Choisnard,Éric LeclercqLaboratoire 法国第戎勃艮第A R T I C L E I N F O关键词:TweetcollectorTwitter社交网络A B标准社交网络数据用于广泛的兴趣领域,包括政治,营销或社会科学。在现有的社交网络中,Twitter似乎是研究人员的主要平台,因为它的数据可以通过API访问,任何请求开发者帐户的Twitter用户都可以访问。然而,对于没有信息技术技能的用户来说,很难设置收集和检索预期的推文。为此,我们提出了Garuda,一个轻量级的tweet收集器工具,允许有效地建立一个收集和转换tweet在一个更有用的格式。代码元数据当前代码版本v1.0用于此代码版本的代码/存储库的永久链接https://github.com/SoftwareImpacts/SIMPAC-2023-91可再生胶囊的永久链接https://codeocean.com/capsule/0389351/tree/v1GNU通用公共许可证GNU General Public Licensev3.0使用git的代码版本控制系统使用Scala、Play框架、Twitter API v2的软件代码语言、工具和服务编译要求,操作环境依赖性Java安装(≥1.8)如果可用,链接到开发人员文档/手册https://github.com/AnnabelleGillet/Garuda#readme问题支持电子邮件annabelle. u-bourgogne.fr1. 介绍社交网络数据的研究对于许多研究领域都具有重要意义,而且对于丰富企业外部数据源也具有重要意义。例如,研究可能涉及信息的传播[1]、政治[2]或自然灾害的检测[3]。Twitter是一个研究中使用最多的社交网络,因为可以轻松访问其数据。有很多方法可以分析Twitter数据,例如构建交互图并应用社区检测算法,对推文的某些属性使用机器学习算法或使用已发布推文的时间序列检测事件1关键词、标签、用户等, 或者甚至取决于这些元素的组合(与OR和AND运算符相关联)。使用过滤流API可以构建专注于特定主题的数据集。但是,要使用Twitter API,需要通过URL联系然后,推文以JSON格式传递,这不是用于数据分析的最简单格式。因此,我们提出了Garuda,一个轻量级的工具,可用于收集推文,并将其转换为更接近用户需求的格式。2. 功能为了利用其数据,Twitter使用了几个API,可以通过开发者帐户访问。 过滤流API2非常实用,因为它可以实时发送符合用户定义的一个或多个规则例如,规则可以过滤Garuda是一个Web应用程序,它提供了处理界面来配置tweets的集合并利用收集的tweets经上所记本文中的代码(和数据)已由Code Ocean认证为可复制:(https://codeocean.com/)。更多关于生殖器的信息徽章倡议可在https://www.elsevier.com/physical-sciences-and-engineering/computer-science/journals上查阅。∗通讯作者。电子邮件地址:annabelle. u-bourgogne.fr(A. Gillet),mickael. u-bourgogne.fr(M. Choisnard),Eric. u-bourgogne.fr。Leclercq)。第1https://developer.twitter.com/en/products/twitter-api2https://developer.twitter.com/en/docs/twitter-api/tweets/filtered-stream/introductionhttps://doi.org/10.1016/j.simpa.2023.100496接收日期:2023年2月24日;接收日期:2023年3月10日;接受日期:2023年3月17日2665-9638/©2023作者。由Elsevier B.V.出版。这是一篇开放获取的文章,使用CC BY许可证(http://creativecommons.org/licenses/by/4.0/)。可在ScienceDirect上获得目录列表软件影响杂志 首页:www.journals.elsevier.com/software-impactsA. Gillet,M. Choisnard和P.S. Leclercq软件影响16(2023)1004962Scala [4]中,并依赖于Play框架。3它不需要部署信息技术技能2.1. Tweets收藏Garuda为用户提供了一个界面来管理用于过滤推文流的规则。规则可以相当精确,并且其长度取决于用于收集的帐户的访问级别(例如,重要的,提升的,学术的)。它们由允许定义感兴趣的推文的关键字组成,例如单词、Twitter帐户、主题标签、URL等,以及操作符来链接这些关键字,例如使用AND来要求两个关键字都存在于tweet中以检索它,或者使用OR来要求仅存在一个关键字。一旦指定了规则,就可以从接口开始收集。当这样做时,当推文从Twitter发送到应用程序时,它们以原始格式存储在文件中。每24小时,新文件将自动创建。由于在此步骤中没有对推文应用转换,因此由于技术错误而丢失数据的风险很低。Garuda的另一个优势是它能够与Twitter API保持连接。事实上,当使用过滤流API收集推文时,可能会发生一些中断。例如,用户可能会失去互联网连接,或者Twitter API可能会重新启动流。 在这种情况下,使用API打开的连接将关闭,必须重新打开才能继续收集。Garuda会自动处理流中断,并尝试重新打开连接,直到成功,这与Twitter建立的速率限制(两次尝试之间的等待时间)有关。2.2. 处理模块模块允许以不同的方式处理收集的tweets。例如,它们可以用于将推文转换为比原始JSON更有用的格式,或者用于监视收集。为了实时处理推文,同时避免减慢收集速度,模块读取写有推文的文件。 这可以 做 谢谢 到 的 Tailer实现 从 Apache,4,在Unix系统中充当tail-f命令,允许监听在文件上检索新行。通过这样做,模块可以处理新的tweet,而不会有干扰tweet收集的风险,也不需要大量的技术解决方案,例如使用RabbitMQ或Kafka等面向消息的中间件模块还处理集合的现有和静态文件,这些文件不再用于存储传入的tweets。当一个模块没有在收集的同时启动,并且一些文件已经被写入,或者应用一个新开发的模块时,它很有用 以前的收藏。它还可以在收集期间某些资源不可直接使用时使用(例如访问位于服务器上目前,PostgreSQL导出器模块可用。它将推文存储在一个关系模式中,该模式已经用于多个分析[5,6]。未来,我们计划添加更多模块,例如以CSV文件导出推文或实时监控收集的推文数量。2.3. 软件可扩展性在技术层面上,Garuda的开发可以轻松添加新模块。有一些类已经负责处理新的和旧的tweet。当开发一个新的模块时,这些类只需要被扩展,唯一需要定义的方法是如何扩展。to deal处理with each每individual个人tweet鸣叫.3https://www.playframework.com/4https://commons.apache.org/proper/commons-io/apidocs/org/apache/commons/io/input/Tailer.html3. 影响使用Garuda,可以在不编写任何代码的情况下创建tweet语料库。因此,对于没有任何技术背景的研究人员来说,可以检索关于感兴趣主题的推文,以便比查看Twitter Web应用程序更方便地研究它们。对推文语料库的分析可以相当多样化。例如,有些人会从Excel文件中查看它们,有些人会加载tweets在一个环境中,如Xueyter笔记本电脑,以创建数据分析程序。有了Garuda的模块,该软件将很容易调整,以在给定项目中该软件用于鸡尾酒项目5,旨在研究Twitter上与食品和健康相关的话语中的趋势和微弱信号。工业化阶段使用该软件6来构成推文语料库以回答工业界的具体问题。 在这个项目中,一旦tweets被存储在PostgreSQL数据库中,它们将在几个用例中使用。通过SQL查询计算趋势(例如,每小时每个主题标签的使用次数),并通过Web应用程序显示。交互图也是从推文构建的(例如,来自转发关系),并且在这些图上应用检测社区和计算中心性的算法。工业化阶段的最终产品的用户可以探索算法的结果,以便更好地理解推文集合。4. 结论和今后的改进没有信息技术技能的研究人员可以使用Garuda它只关注Twitter数据,但处理逻辑可以应用于其他数据源。目前,除了tweet收集功能之外,只有PostgreSQL exporter模块可用,但它足以满足Cocktail项目的大部分需求。在软件的未来版本中,我们计划添加一个模块来选择感兴趣的领域并在CSV文件中提取推文,因为它是数据分析输入的主要格式。我们还计划添加一个模块来监控 实时收集,并实时计算宏观见解,例如最常用的主题标签。竞合利益作者声明,他们没有已知的竞争性财务利益或个人关系,可能会影响本文报告的工作确认这项工作得到了法国ISITE-BFC的支持(ANR-15-IDEX-0003),由G.Brachotte,CIMEOS实验室(EA 4177),勃艮第大学。引用[1]Deen Freelon,Tetyana Lokot,俄罗斯Twitter的虚假信息活动遍及美国政治光谱,错误信息牧师。(2020年)。[2]Livia van Vliet,Petter Törnberg,Justus Uitermark,Twitter政治数据库:分析26个国家的Twitter政治,PLoS One 15(9)(2020)e0237073。[3]Aldo Hernanal-Suarez , Gabriel Sanchez-Perez , Karina Toscano Medina ,HectorPerez-Meana , Jose Portillo-Portillo , Victor Sanchez , Luis Javier GarcíaVillalba , Using Twitter data to monitor natural disaster social dynamics : Arecurrent neuralnetwork approach with word embeddings and kernel densityestimation,Sensors19(7)(2019)1746。5 https://projet-cocktail.fr/6 https://github.com/atolcd-contrib/GarudaA. Gillet,M. Choisnard和P.S. Leclercq软件影响16(2023)1004963[4]MartinOdersky,Lex Spoon,Bill Venners,Programming in Scala,Artima Inc,2008。[5]Annabelle Gillet,Éric Leclercq,Nadine Cullot,MuLOT:大规模规范多元张量分解的多级优化,在:欧洲数据库和信息系统进展会议,Springer,2021年,pp.198-212[6]Alexander Frame , Gilles Brachotte , Afef Selmi , A vos seringues : Frenchgovernment-tal communication on COVID-19 vaccination via Twitter , in :PhilippeJ. Maarek(Ed.),《制造业政府关于新型冠状病毒肺炎的沟通:比较视角》,施普林格国际出版社,Cham,2022年,第100页。371//dx.doi.org/10.1007/978-3-031-09230-5_19网站。
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 十种常见电感线圈电感量计算公式详解
- 军用车辆:CAN总线的集成与优势
- CAN总线在汽车智能换档系统中的作用与实现
- CAN总线数据超载问题及解决策略
- 汽车车身系统CAN总线设计与应用
- SAP企业需求深度剖析:财务会计与供应链的关键流程与改进策略
- CAN总线在发动机电控系统中的通信设计实践
- Spring与iBATIS整合:快速开发与比较分析
- CAN总线驱动的整车管理系统硬件设计详解
- CAN总线通讯智能节点设计与实现
- DSP实现电动汽车CAN总线通讯技术
- CAN协议网关设计:自动位速率检测与互连
- Xcode免证书调试iPad程序开发指南
- 分布式数据库查询优化算法探讨
- Win7安装VC++6.0完全指南:解决兼容性与Office冲突
- MFC实现学生信息管理系统:登录与数据库操作
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功