scrapy 爬取微博(四)【最新超详细解析】: 设计篇

embedded/2024/9/25 13:22:41/

一、功能设计

开始开发之前我们先对本文的scrapy微博爬虫工程进行一个功能的设计,包含的功能模块如下:

功能模块具体描述
微博文章爬取根据关键词、时间范围等参数爬取微博文章,获取用户名、ID、微博mid、微博内容、点赞、转发、评论等数据
微博评论爬取通过微博评论接口爬取文章相应的评论内容
重复过滤通过管道过滤掉重复性的微博(mid重复)
情感分析通过管道对微博的文本进行情感分析,分为积极、中性和消极,基于bert利用深度学习进行情感分析
保存数据库爬取结果保存到MySQL数据库中

二、 管道设计

爬虫公工程内设计了3个管道,首先是重复性检查,其次是情感分析,最后是保存MySQL,可以根据需要激活或者禁用这些管道。
在这里插入图片描述

三、 数据库设计

先给出爬取微博文章的表

CREATE TABLE `tb_weibo` (`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增ID',`mid` varchar(20) NOT NULL,`bid` varchar(12) NOT NULL,`user_id` varchar(20) DEFAULT NULL,`screen_name` varchar(30) DEFAULT NULL,`text` varchar(2000) DEFAULT NULL,`article_url` varchar(100) DEFAULT NULL,`topics` varchar(200) DEFAULT NULL,`at_users` varchar(1000) DEFAULT NULL,`pics` varchar(3000) DEFAULT NULL,`video_url` varchar(1000) DEFAULT NULL,`location` varchar(100) DEFAULT NULL,`created_at` datetime DEFAULT NULL,`source` varchar(30) DEFAULT NULL,`attitudes_count` int(11) DEFAULT NULL,`comments_count` int(11) DEFAULT NULL,`reposts_count` int(11) DEFAULT NULL,`retweet_id` varchar(20) DEFAULT NULL,`user_authentication` varchar(100) DEFAULT NULL,`keywords` varchar(100) DEFAULT NULL,`ip` varchar(100) DEFAULT NULL,`label` varchar(100) DEFAULT NULL COMMENT '情感分析',PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=254 DEFAULT CHARSET=utf8;

参考项目

weibo-search 非常好的一个项目,可以下载直接爬取数据的,本文的爬取工程就是在此基础上进行扩展的。


http://www.ppmy.cn/embedded/116624.html

相关文章

Rust 文件与 IO

Rust 文件与 IO Rust 是一种系统编程语言,以其内存安全、速度和并发性而闻名。在处理文件和 IO(输入/输出)操作时,Rust 提供了一套丰富的库,使得这些操作既安全又高效。本文将深入探讨 Rust 中的文件与 IO 处理&#…

对接阿里asr和Azure asr

1&#xff1a;对接阿里asr 1.1&#xff1a;pom <dependency><groupId>com.alibaba.nls</groupId><artifactId>nls-sdk-recognizer</artifactId><version>2.2.1</version> </dependency>1.2&#xff1a;生成token package c…

【Redis】分布式锁之 Redission

一、基于setnx实现的分布式锁问题 重入问题&#xff1a;获得锁的线程应能再次进入相同锁的代码块&#xff0c;可重入锁能防止死锁。例如在HashTable中&#xff0c;方法用synchronized修饰&#xff0c;若在一个方法内调用另一个方法&#xff0c;不可重入会导致死锁。而synchroni…

【开源免费】基于SpringBoot+Vue.JS图书馆管理系统(JAVA毕业设计)

本文项目编号 T 044 &#xff0c;文末自助获取源码 \color{red}{T044&#xff0c;文末自助获取源码} T044&#xff0c;文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析5.4 用例设计 六、核…

Vue+Tui-image-editor实现图片编辑(涂鸦,裁剪,标注,旋转,滤镜)

目录 前言 效果展示 涂鸦 裁剪 标注 旋转 滤镜 安装 使用 中文化自定义样式按钮优化 参考链接 前言 需求&#xff1a;对图片进行旋转、缩放、裁剪、涂鸦、标注、添加文本等。 效果展示 涂鸦 裁剪 标注 旋转 滤镜 安装 npm i tui-image-editor // or yarn add tui-image…

Java接口和抽象类的区别

文章目录 前言两者语法上的区别接口抽象类 两者思想上的区别接口抽象类 前言 最近在刷八股的时候看到 接口和抽象类的区别 这个问题&#xff0c;答案就是一些如抽象类使用abstract声明、有抽象方法&#xff0c;接口使用interface声明、一个类可以实现多个接口等。 但是想了一下…

qt相关面试题

qt中的文件流和数据流区别qt中的show和exec区别qt多线程使用那些方法QString与基本数据类型如何转换qt如何保证多线程安全qt中事件与信号的区别qt中的connect函数的连接方式信号与槽有哪些用法QT的事件过滤器同步和异步的网络连接区别qt网络模块中有哪些类来执行异步操作qt如何…

免费下载6组简历模板,让HR一眼相中你!

简历是求职者向招聘单位展示自我的重要工具&#xff0c;选择一份高质量的简历模板免费下载&#xff0c;能够提升面试机会并留下深刻印象。优秀的简历模板需具备清晰的信息结构、出色的视觉效果及合理的排版布局。简历的配色可以凸显求职者的个性&#xff0c;而有逻辑性的排版则…