当前位置: 首页 > news >正文

探索CSDN博客数据:使用Python爬虫技术

探索CSDN博客数据:使用Python爬虫技术

在数字化的浪潮中,数据的获取与分析变得日益关键。CSDN作为中国领先的IT社区和服务平台,汇聚了海量的技术博客与文章,成为一座蕴藏丰富的数据宝库。本文将引领您穿梭于Python的requests和pyquery库之间,探索如何撷取CSDN博客的点滴信息,并进行初步的数据处理。

前提声明

  • 爬虫应遵守目标网站的robots.txt协议,尊重版权和用户隐私。
  • 本代码仅供学习和研究使用,不得用于商业用途。
  • 请确保在合法合规的前提下使用本代码。
  • 本代码所爬取的数据为公开可选择的博客信息。

目录

  1. 引言
  2. 环境准备
  3. 爬虫代码解析
  4. 代码解释
  5. 效果展示
  6. 注意事项
  7. 结语
  8. 全部代码

引言

在数字化时代,数据的获取和分析变得越来越重要。作为一名程序员或数据分析师,我们经常需要从各种在线平台抓取数据以进行进一步的分析或学习。CSDN作为中国最大的IT社区和服务平台,拥有大量的技术博客和文章,是一个丰富的数据源。本文将介绍如何使用Python的requests和pyquery库来爬取CSDN博客的信息,并进行简单的数据处理。

环境准备

在开始之前,确保你的环境中已经安装了Python,并且安装了以下库:

  • requests:用于发送网络请求。
  • pyquery:一个解析HTML的库,类似于jQuery。

可以通过pip安装这些库:

pip install requests pyquery

爬虫代码解析

import requests
from pyquery import PyQuery as pq# 用户输入CSDN账号
account = input('请输入CSDN ID:')# 构建基本的URL
baseUrl = f'http://blog.csdn.net/{account}' 
myUrl = f'{baseUrl}/article/list/1'# 设置请求头,模拟浏览器访问
headers = {'User-Agent': 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
}# 发送请求并获取页面内容
myPage = requests.get(myUrl, headers=headers).text
doc = pq(myPage)# 打印博客的一些基本信息
data_info = doc("aside .data-info dl").items()
for i, item in enumerate(data_info):if i == 0:print("原创:" + item.attr("title"))if i == 1:print("粉丝:" + item.attr("title"))if i == 2:print("喜欢:" + item.attr("title"))if i == 3:print("评论:" + item.attr("title"))# 爬取文章列表
page_num = 1
while True:myUrl = f'{baseUrl}/article/list/{page_num}'myPage = requests.get(myUrl, headers=headers).textif len(myPage) < 30000:breakprint(f'-----------------------------第 {page_num} 页---------------------------------')doc = pq(myPage)articles = doc(".article-list > div").items()for i, item in enumerate(articles):if i == 0:continuetitle = item("h4 > a").text()[2:]date = item("p > .date").text()num_item = item("p > .read-num").items()article_info = [date, title]for j, jitem in enumerate(num_item):if j == 0:article_info.append(jitem.text())else:article_info.append(jitem.text())print(" ".join(article_info))page_num += 1

代码解释

  1. 用户输入
    脚本首先提示用户输入CSDN的ID,这个ID用于构建访问CSDN博客的URL。

  2. 请求头设置
    为了模拟浏览器访问,脚本设置了请求头。这是为了避免被网站的反爬虫机制识别,因为很多网站会检查请求头中的User-Agent来确定访问者是否为真实用户。

  3. 获取页面内容
    使用requests库发送HTTP请求,获取博客页面的HTML内容。这是爬虫的基础步骤,通过发送请求并接收响应来获取网页数据。

  4. 解析HTML
    使用pyquery库解析HTML内容,提取所需的信息。pyquery类似于jQuery,可以方便地选择HTML元素并提取数据。在这个脚本中,它被用来提取博客的原创、粉丝、喜欢和评论数量等信息。

  5. 爬取文章列表
    通过循环,脚本爬取每一页的文章列表,包括文章的标题、发布日期、阅读量和评论数。这是通过构造不同的URL(根据页码)并重复发送请求来实现的。每次循环都会检查响应内容的长度,如果内容过短,则认为已经到达最后一页,循环结束。

效果展示
image.png

注意事项

  • 遵守爬虫规范:在进行数据爬取时,应该尊重网站的robots.txt文件,这是网站所有者设定的爬虫访问规则。合理设置爬取频率,避免在短时间内发送大量请求,以免给网站服务器带来不必要的压力和负担。同时,也要注意不要爬取那些被明确禁止爬取的内容。

  • 数据使用:获取的数据应仅用于个人学习或研究,不得用于商业用途。在使用爬取的数据时,应遵守数据的版权和知识产权规定,尊重数据的原创性和所有权。如果数据中包含个人信息,还应遵守相关的隐私保护法规,不得泄露或滥用这些信息。

  • 法律风险:在爬取数据前,确保你的行为不违反相关法律法规。不同国家和地区对于数据爬取有不同的法律规定,因此在进行爬取活动前,应充分了解并遵守当地的法律法规。避免侵犯版权、商标权、专利权等知识产权,以及违反个人隐私保护法规。

  • 技术道德:在技术实践中,应遵循技术道德,尊重他人的劳动成果。在爬取和使用数据时,应考虑到数据来源网站的利益,避免对网站的正常运营造成影响。同时,也应考虑到其他用户的利益,避免因个人行为而损害社区的整体利益。

  • 透明度和责任:在使用爬虫技术时,应保持透明度,对自己的行为负责。如果爬取的数据将被公开或用于研究,应明确数据来源,并在可能的情况下,征得数据所有者的同意。在发现数据中的错误或不准确信息时,应及时更正,并对自己的行为承担相应的责任。

  • 持续学习:技术环境和法律法规都在不断变化,因此,作为技术人员,应持续学习最新的技术发展和法律动态,以确保自己的行为始终符合最新的标准和要求。

结语
本文介绍了如何使用Python的requests和pyquery库来爬取CSDN博客的数据,并进行简单的数据处理。CSDN作为中国最大的IT社区和服务平台,拥有大量的技术博客和文章,是一个丰富的数据源。通过这个简单的爬虫脚本,用户可以轻松地获取CSDN博客的数据,进行进一步的分析或学习。

首先,文章强调了爬虫应遵守目标网站的robots.txt协议,尊重版权和用户隐私,并确保在合法合规的前提下使用代码。接着,介绍了环境准备,包括安装Python和必要的库。然后,文章通过详细的代码解析,展示了如何构建URL、设置请求头、发送请求、解析HTML以及爬取文章列表的过程。

代码首先提示用户输入CSDN的ID,以便构建访问的URL。然后,设置请求头模拟浏览器访问,使用requests库发送HTTP请求获取博客页面的HTML内容。利用pyquery库解析HTML,提取博客的原创、粉丝、喜欢和评论数量等信息。通过循环,爬取每一页的文章列表,包括文章的标题、发布日期、阅读量和评论数。

文章还提供了效果展示,通过截图展示了爬虫脚本的运行结果。同时,强调了在爬取数据时应当遵守的规范和法律风险,提醒用户获取的数据应仅用于个人学习或研究,不得用于商业用途。

最后,文章总结了通过这个爬虫脚本,用户可以提升自己的数据处理能力,并在实际工作中应用所学知识。同时,鼓励读者探索技术的无限可能,并在遇到问题时联系作者寻求帮助。

整体而言,这篇文章不仅提供了一个实用的爬虫工具,还强调了在爬取数据时应当遵守的规范和法律风险,对于希望学习网络爬虫技术的读者来说,是一篇很好的入门教程。

在数字化时代,数据的获取和分析变得越来越重要。CSDN作为中国最大的IT社区和服务平台,拥有大量的技术博客和文章,是一个丰富的数据源。本文介绍了如何使用Python的requests和pyquery库来爬取CSDN博客的信息,并进行简单的数据处理。通过这个简单的爬虫脚本,你可以轻松地获取CSDN博客的数据,进行进一步的分析或学习。这不仅是一次编程实践,更是对网络请求、HTML解析和数据处理的深入理解。希望读者能够将所学应用到更多有趣和有益的项目中去,并在实践中不断提升自己的编程能力。如果有任何问题或需要进一步的帮助,请随时联系作者。让我们一起探索技术的无限可能!

全部代码

# 例如输入:lwcwamimport requests
from pyquery import PyQuery as pq# 当前的博客列表页号
page_num = 1account = str(input('print csdn id:'))
#account = "lwcwam"
# 首页地址
baseUrl = 'http://blog.csdn.net/' + account
# 连接页号,组成爬取的页面网址
myUrl = baseUrl + '/article/list/' + str(page_num)headers = {'User-Agent': 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'}
# 构造请求# 访问页面
myPage = requests.get(myUrl,headers=headers).textdoc = pq(myPage)data_info = doc("aside .data-info dl").items()
for i,item in enumerate(data_info):if i==0:print("原创:"+item.attr("title"))if i==1:print("粉丝:"+item.attr("title"))if i==2:print("喜欢:"+item.attr("title"))if i==3:print("评论:"+item.attr("title"))grade_box = doc(".grade-box dl").items()
for i,item in enumerate(grade_box):if i==0:childitem = item("dd > a")print("等级:"+childitem.attr("title")[0:2])if i==1:childitem = item("dd")print("访问:"+childitem.attr("title"))if i==2:childitem = item("dd")print("积分:"+childitem.attr("title"))if i==3:print("排名:"+item.attr("title"))# 获取每一页的信息
while True:# 首页地址baseUrl = 'http://blog.csdn.net/' + account# 连接页号,组成爬取的页面网址myUrl = baseUrl + '/article/list/' + str(page_num)# 构造请求myPage = requests.get(myUrl,headers=headers).textif len(myPage) < 30000:breakprint('-----------------------------第 %d 页---------------------------------' % (page_num,))doc = pq(myPage)articles = doc(".article-list > div").items()articleList = []for i,item in enumerate(articles):if i == 0:continuetitle = item("h4 > a").text()[2:]date = item("p > .date").text()num_item = item("p > .read-num").items()ariticle = [date, title]for j,jitem in enumerate(num_item):if j == 0:read_num = jitem.text()ariticle.append(read_num)else:comment_num = jitem.text()ariticle.append(comment_num)articleList.append(ariticle)for item in articleList:if(len(item)==4):print("%s %s %s %s"%(item[0],item[1],item[2],item[3]))page_num = page_num + 1

相关文章:

探索CSDN博客数据:使用Python爬虫技术

探索CSDN博客数据&#xff1a;使用Python爬虫技术 在数字化的浪潮中&#xff0c;数据的获取与分析变得日益关键。CSDN作为中国领先的IT社区和服务平台&#xff0c;汇聚了海量的技术博客与文章&#xff0c;成为一座蕴藏丰富的数据宝库。本文将引领您穿梭于Python的requests和py…...

PPT画图——如何设置导致图片为600dpi

winr&#xff0c;输入regedit打开注册表 按路径找&#xff0c;HKEY_CURRENT_USER\Software\Microsoft\Office\XX.0\PowerPoint\Options&#xff08;xx为版本号&#xff0c;16.0 or 15.0或则其他&#xff09;。名称命名&#xff1a;ExportBitmapResolution 保存即可&#xff0c;…...

uniapp——APP读取bin文件,解析文件的数据内容(二)

文章目录 读取bin文件内容&#xff0c;发送给蓝牙设备&#xff1b;上传文件返回数据格式通过URL路径获取文件对象&#xff0c;读取文件的数据内容file对象返回数据格式 读取bin文件内容&#xff0c;发送给蓝牙设备&#xff1b; 上传文件&#xff0c;根据返回路径&#xff0c;解…...

Paddler负载均衡器

Paddler负载均衡器 Paddler本身是用Go语言编写的,没有直接的Python接口,但可以通过以下方式在Python中使用: 执行命令行调用 在Python中可以使用 subprocess 模块来调用Paddler的命令行工具,实现负载均衡功能 。例如: import subprocessdef start_paddler_agent():com…...

`we_chat_union_id IS NOT NULL` 和 `we_chat_union_id != ‘‘` 这两个条件之间的区别

文章目录 1、什么是空字符串&#xff1f;2、两个引号之间加上空格 好的&#xff0c;我们来详细解释一下 we_chat_union_id IS NOT NULL 和 we_chat_union_id ! 这两个条件之间的区别&#xff0c;以及它们在 SQL 查询中的作用&#xff1a; 1. we_chat_union_id IS NOT NULL 含…...

clicbot可立宝编程 易错归纳笔记

1、屏幕播放表情模块和等待时间 易错点1&#xff1a; (1)等待时间&#xff1a; (a)不是等上一个代码执行完&#xff0c;再执行等待时间&#xff0c;这是错误的。 (b)等待时间上面的代码1刚开始执行&#xff0c;上面的代码2也刚开始执行&#xff0c;不是等到代码1执行完&#xf…...

MySQL 数据”丢失”事件之 binlog 解析应用

事件背景 客户反馈在晚间数据跑批后,查询相关表的数据时,发现该表的部分数据在数据库中不存在 从应用跑批的日志来看,跑批未报错,且可查到日志中明确显示当时那批数据已插入到数据库中 需要帮忙分析这批数据丢失的原因。 备注:考虑信息敏感性,以下分析场景测试环境模拟,相关数据…...

基于人工智能时代政务智慧转型的实现前景初探

去年6月&#xff0c;我有幸聆听了由华政公共管理与政治学院精心组织的2019年MPA研究生高端论坛&#xff0c;上午场&#xff1a;由董海军&#xff08;中共上海市委机构编制委员会办公室处长&#xff09;主讲的深化机构改革的探索与实践&#xff0c;以及下午场&#xff1a;由束金…...

【论文笔记】Visual Alignment Pre-training for Sign Language Translation

&#x1f34e;个人主页&#xff1a;小嗷犬的个人主页 &#x1f34a;个人网站&#xff1a;小嗷犬的技术小站 &#x1f96d;个人信条&#xff1a;为天地立心&#xff0c;为生民立命&#xff0c;为往圣继绝学&#xff0c;为万世开太平。 基本信息 标题: Visual Alignment Pre-tra…...

一起学Git【第五节:git版本回退】

git reset 是 Git 版本控制系统中一个非常强大的命令,它可以用来重置当前分支到指定的状态,即执行撤销操作或者回退至之前的某一版本,他可以回退至之前的某一个提交状态。有三种主要的用法:git reset --soft;git reset --hard;git reset --mixed; 对比如图: 1.git res…...

金蝶V10中间件的使用

目录 环境准备搭建过程配置修改应用部署 环境准备 Linux内核服务器JDK1.8安装包&#xff1a;AAS-V10.zip程序包&#xff1a;***.war 搭建过程 将安装包上传至服务器opt目录下&#xff0c;官方给定的默认服务主目录为“/opt/AAS-V10/ApusicAS/aas/”&#xff1b;解压安装包(解…...

hi168大数据离线项目环境搭建

hi168大数据离线项目环境搭建 ## **1. 服务器准备**##### 1.1 创建集群应用节点 集群服务器使用“我的应用“中的Ubuntu22.04集群模版创建三个节点应用&#xff0c;并且进入“我的应用”中去修改一下节点名称&#xff08;node1对应master&#xff0c;node2对应hadoop1&#xf…...

Ubuntu 22.04安装Docker

陈拓 2024/10/19-2024/12/26 0. 概述 docker是容器&#xff08;Container&#xff09;&#xff0c;有点像一个轻量级的虚拟机。 容器是一种轻量级、可移植、并将应用程序进行的打包的技术&#xff0c;使应用程序可以在几乎任何地方以相同的方式运行。Docker将镜像文件运行起…...

穿山甲等广告联盟依据哪些维度给APP、小程序结算广告变现收益

媒体在开展广告变现商业化时&#xff0c;最关心的是变现收益问题&#xff0c;所运营的不同体量的APP、小程序能产生多少广告变现收益。#广告联盟# 广告变现的价格、收益不是一成不变的&#xff0c;广告转化是影响广告收益的重要因素之一。广告平台针对整个变现链路上的各环节&…...

【ES6复习笔记】迭代器(10)

什么是迭代器&#xff1f; 迭代器&#xff08;Iterator&#xff09;是一种对象&#xff0c;它能够遍历并访问一个集合中的元素。在 JavaScript 中&#xff0c;迭代器提供了一种统一的方式来处理各种集合&#xff0c;如数组、字符串、Map、Set 等。通过迭代器&#xff0c;我们可…...

ROS1入门教程6:复杂行为处理

一、新建项目 # 创建工作空间 mkdir -p demo6/src && cd demo6# 创建功能包 catkin_create_pkg demo roscpp rosmsg actionlib_msgs message_generation tf二、创建行为 # 创建行为文件夹 mkdir action && cd action# 创建行为文件 vim Move.action# 定义行为…...

【 Copilot】云开发 Copilot 实战教程:从入门到精通,掌握云开发核心技能

我的个人主页 我的领域&#xff1a;人工智能篇&#xff0c;希望能帮助到大家&#xff01;&#xff01;&#xff01;&#x1f44d;点赞 收藏❤ 引言 云开发 Copilot 作为一款革新性的开发辅助工具&#xff0c;利用先进的人工智能技术&#xff0c;为开发者在云开发的征程中点亮…...

DataCap MongoDB Driver: 全面解析MongoDB在DataCap中的使用指南

在大数据时代&#xff0c;MongoDB作为一款广受欢迎的NoSQL数据库&#xff0c;其灵活的文档存储模型和强大的查询能力使其成为许多现代应用的首选数据存储方案。今天&#xff0c;我们将深入探讨DataCap MongoDB Driver&#xff0c;这是一个强大的工具&#xff0c;它让在DataCap环…...

[x86 ubuntu22.04]双触摸屏的触摸事件都响应在同一个触摸屏上

1 问题描述 CPU&#xff1a;G6900E OS&#xff1a;ubuntu22.04 Kernel&#xff1a;6.8.0-49-generic 系统下有两个一样的 edp 触摸屏&#xff0c;两个触摸屏的触摸事件都响应在同一个 edp 屏幕上。 2 解决过程 使用“xinput”命令查看输入设备&#xff0c;可以看到只有一个 to…...

Linux:SystemV通信

目录 一、System V通信 二、共享内存 代码板块 总结 一、System V通信 System V IPC&#xff08;inter-process communication&#xff09;&#xff0c;是一种进程间通信方式。其实现的方法有共享内存、消息队列、信号量这三种机制。 本文着重介绍共享内存这种方式。 二、共…...

全面Kafka监控方案:从配置到指标

文章目录 1.1.监控配置1.2.监控工具1.3.性能指标系统相关指标GC相关指标JVM相关指标Topic相关指标Broker相关指标 1.4.性能指标说明1.5.重要指标说明 1.1.监控配置 开启JMX服务端口&#xff1a;kafka基本分为broker、producer、consumer三个子项&#xff0c;每一项的启动都需要…...

Springboot项目Druid运行时动态连接多数据源的功能

项目支持多数据库连接是个很常见的需求&#xff0c;这不仅是要在编译前连已经知道的多个数据库&#xff0c;有时还要在程序运行时连后期增加的多个数据源来获得数据。 一、编译前注册数据库连接 1.引入依赖包 <!-- springboot 3.x --><dependency><groupId&g…...

【漏洞复现】F5 BIG-IP Next Central Manager SQL注入漏洞(CVE-2024-26026)

免责声明 请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。工具来自网络,安全性自测,如有侵权请联系删除。本次测试仅供学习使用,如若非法他用,与平台和本文作…...

中间件xxl-job安装

拉取镜像 docker pull xuxueli/xxl-job-admin:2.4.2 创建xxl-job-admin容器 docker create --name xxl-job-admin -p 9099:8080 -e PARAMS"--spring.datasource.urljdbc:mysql://192.168.96.57:3306/xxl_job2Unicodetrue&characterEncodingUTF-8 --spring.dataso…...

Pytorch | 利用SMI-FGRM针对CIFAR10上的ResNet分类器进行对抗攻击

Pytorch | 利用I-FGSSM针对CIFAR10上的ResNet分类器进行对抗攻击 CIFAR数据集SMI-FGRM介绍SMI-FGRM算法流程 SMI-FGRM代码实现SMI-FGRM算法实现攻击效果 代码汇总smifgrm.pytrain.pyadvtest.py 之前已经针对CIFAR10训练了多种分类器&#xff1a; Pytorch | 从零构建AlexNet对CI…...

论文解读 | EMNLP2024 一种用于大语言模型版本更新的学习率路径切换训练范式

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入&#xff01; 点击 阅读原文 观看作者讲解回放&#xff01; 作者简介 王志豪&#xff0c;厦门大学博士生 刘诗雨&#xff0c;厦门大学硕士生 内容简介 新数据的不断涌现使版本更新成为大型语言模型&#xff08;LLMs&#xff…...

破解海外业务困局:新加坡服务器托管与跨境组网策略

在当今全球化商业蓬勃发展的浪潮之下&#xff0c;众多企业将目光投向海外市场&#xff0c;力求拓展业务版图、抢占发展先机。而新加坡&#xff0c;凭借其卓越的地理位置、强劲的经济发展态势以及高度国际化的营商环境&#xff0c;已然成为企业海外布局的热门之选。此时&#xf…...

win系统B站播放8k视频启用HEVC编码

下载HEVC插件 点击 HEVC Video Extension 2.2.20.0 latest downloads&#xff0c;根据教程下载安装 安装 Random User-Agent 点击 Random User-Agent 安装 配置 Random User-Agent ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/dda0ea75096c42c0a79ef6f6f5521…...

Pion WebRTC 项目教程

Pion WebRTC 项目教程 webrtc Pure Go implementation of the WebRTC API [这里是图片001] 项目地址: https://gitcode.com/gh_mirrors/we/webrtc 1. 项目目录结构及介绍 Pion WebRTC 项目的目录结构如下&#xff1a; pion/webrtc ├── api ├── examples ├── inter…...

Opencv之对图片的处理和运算

Opencv实现对图片的处理和修改 目录 Opencv实现对图片的处理和修改灰度图读取灰度图转换灰度图 RBG图单通道图方法一方法二 单通道图显色合并单通道图 图片截取图片打码图片组合缩放格式1格式2 图像运算图像ma[m:n,x:y]b[m1:n1,x1:y1] add加权运算 灰度图 读取灰度图 imread(‘…...

基于cobra开发的k8s命令行管理工具k8s-manager

基于cobra开发的k8s命令行管理工具k8s-manager 如果觉得好用&#xff0c;麻烦给个Star!通用配置1 node 分析所有node的资源情况2 analysis 分析Node节点上的资源使用构成3 image 获取指定namespace的所有镜像地址4 resource 获取指定namespace的所有limit 与 Requests大小5 top…...

基于NodeMCU的物联网空调控制系统设计

最终效果 基于NodeMCU的物联网空调控制系统设计 项目介绍 该项目是“物联网实验室监测控制系统设计&#xff08;仿智能家居&#xff09;”项目中的“家电控制设计”中的“空调控制”子项目&#xff0c;最前者还包括“物联网设计”、“环境监测设计”、“门禁系统设计计”和“小…...

springboot/ssm图书大厦图书管理系统Java代码编写web图书借阅项目

springboot/ssm图书大厦图书管理系统Java代码编写web图书借阅项目 基于springboot(可改ssm)vue项目 开发语言&#xff1a;Java 框架&#xff1a;springboot/可改ssm vue JDK版本&#xff1a;JDK1.8&#xff08;或11&#xff09; 服务器&#xff1a;tomcat 数据库&#xff…...

【MySQL】踩坑笔记——保存带有换行符等特殊字符的数据,需要进行转义保存

问题描述 从DBeaver中导出了部分业务数据的 insert sql&#xff0c;明明在开发、测试环境都可以一把执行通过&#xff0c;却在预发环境执行前的语法检查失败了&#xff0c;提示有SQL语法错误。 这条SQL长这样&#xff0c;default_sql是要在odps上执行的sql语句&#xff0c;提…...

利用 Python 编写一个 VIP 音乐下载脚本

在这篇博客中,我们将介绍如何使用 Python 编写一个简单的 VIP 音乐下载脚本,利用网页爬虫技术从一个音乐网站下载歌曲。通过解析网页,获取歌曲的真实下载链接,并将音乐文件保存到本地。我们将使用 requests 和 BeautifulSoup 库来实现这个过程。 目标 本脚本的主要功能是…...

Sashulin升级啦,开箱即用!

经过多年的不断投入&#xff0c;升级为了Sashulin基础软件系列&#xff0c;本系列包含&#xff1a; 1、Sashulin IDE 2025全域通用开发工具 通用型Java开发工具&#xff0c;并可以进行业务流可视化开发。 2、发布Sashulin Webserver 2025 将Html等网页文件发布成网站&#xf…...

Java圣诞树

目录 写在前面 技术需求 程序设计 代码分析 一、代码结构与主要功能概述 二、代码功能分解与分析 1. 类与常量定义 2. 绘制树的主逻辑 3. 彩色球的绘制 4. 动态效果的实现 5. 窗口初始化 三、关键特性与优点 四、总结 写在后面 写在前面 Java语言绘制精美圣诞树…...

在Python如何用Type创建类

文章目录 一&#xff0c;如何创建类1&#xff1a;创建一个简单类2&#xff1a;添加属性和方法3&#xff1a;动态继承父类4&#xff1a;结合元类的使用总结 二.在什么情境下适合使用Type创建类1. **运行时动态生成类**2. **避免重复代码**3. **依赖元类或高级元编程**4. **动态扩…...

04软件测试需求分析案例-用户登录

通读文档&#xff0c;提取信息&#xff0c;提出问题&#xff0c;整理为需求。 从需求规格说明、设计说明、配置说明等文档获取原始需求&#xff0c;通读原始需求&#xff0c;分析有哪些功能&#xff0c;每种功能要完成什么业务&#xff0c;业务该如何实现&#xff0c;业务逻辑…...

替代传统FTP传输,镭速大数据传输系统实现安全高效数据流转!

信息技术的快速进步让大数据成为了企业决策的关键支撑&#xff0c;但同时也带来了巨大的挑战。企业在运营过程中产生的数据量急剧增加&#xff0c;这对数据传输的速度、安全性和效率提出了更高的要求。然而&#xff0c;传统的FTP传输方式在处理大规模数据时显得力不从心&#x…...

SpringMVC学习(一)——请求与响应处理

目录 一、SpringMVC简介 二、RequestMapping&#xff1a;请求路径映射 三、RestController 四、请求限定 五、请求处理 1.使用普通变量&#xff0c;收集请求参数 2.使用RequestParam明确指定获取参数 3.目标方法参数是一个pojo 4.RequestHeader&#xff1a;获取请求…...

大语言模型学习工具及资源总结和落地应用

当前&#xff0c;随着人工智能技术的迅猛发展&#xff0c;大语言模型&#xff08;Large Language Models, LLMs&#xff09;在各个领域的应用日益广泛。以下是国内外常见的大语言模型工具、已经落地部署的应用以及学习相关的网站和资源的详细介绍。 一、国内外常见的大语言模型…...

深度学习使用Anaconda打开Jupyter Notebook编码

新手入门深度学习使用Anaconda打开Jupyter Notebook编码 1. 安装Anaconda 第一种是Anaconda官网下载安装包&#xff0c;但是很慢&#xff0c;不太建议 第二种使用国内清华大学镜像源下载 选择适合自己电脑的版本&#xff0c;支持windows&#xff0c;linux系统 下载完之后自行…...

【视觉惯性SLAM:四、相机成像模型】

相机成像模型介绍 相机成像模型是计算机视觉和图像处理中的核心内容&#xff0c;它描述了真实三维世界如何通过相机映射到二维图像平面。相机成像模型通常包括针孔相机的基本成像原理、数学模型&#xff0c;以及在实际应用中如何处理相机的各种畸变现象。 一、针孔相机成像原…...

Firewalld 防火墙详解:深入理解与实践指南

在现代网络环境中&#xff0c;防火墙是保护系统和网络不受未授权访问的关键工具。firewalld是Linux系统中广泛使用的动态防火墙管理工具&#xff0c;它提供了强大的功能和灵活的配置选项。本文将深入探讨firewalld防火墙的工作原理、配置和管理&#xff0c;以及如何在实际环境中…...

在linux系统中使用jdbc访问sqlite数据库时报错“java.lang.UnsatisfiedLinkError”

1. 异常描述 在linux系统中使用jdbc访问sqlite数据库时出现如下错误提示&#xff1a; 2. 异常分析 可能是当前使用版本的sqlite-jdbc-xxx.jar版本有bug。 3. 异常解决 我是从3.8.9.1版本换到了3.16.1版本就好了。...

华为管理变革之道:管理制度创新

目录 华为崛起两大因素&#xff1a;管理制度创新和组织文化。 管理是科学&#xff0c;150年来管理史上最伟大的创新是流程 为什么要变革&#xff1f; 向世界标杆学习&#xff0c;是变革第一方法论 体系之一&#xff1a;华为的DSTE战略管理体系&#xff08;解决&#xff1a…...

MySQL 临时表:使用技巧与最佳实践

MySQL 临时表&#xff1a;使用技巧与最佳实践 引言 在数据库管理系统中&#xff0c;临时表是一种常见的数据结构&#xff0c;它允许用户存储临时数据&#xff0c;这些数据只在当前会话或事务中有效。MySQL 作为一种广泛使用的数据库管理系统&#xff0c;也提供了对临时表的支…...

华为云语音交互SIS的使用案例(文字转语音-详细教程)

文章目录 题记一 、语音交互服务&#xff08;Speech Interaction Service&#xff0c;简称SIS&#xff09;二、功能介绍1、实时语音识别2、一句话识别3、录音文件识别4、语音合成 三、约束与限制四、使用1、API2、SDK 五、项目集成1、引入pom依赖2、初始化 Client1&#xff09;…...

【Rust自学】6.3. 控制流运算符-match

喜欢的话别忘了点赞、收藏加关注哦&#xff0c;对接下来的教程有兴趣的可以关注专栏。谢谢喵&#xff01;(&#xff65;ω&#xff65;) 6.3.1. 什么是match match允许一个值与一系列模式进行匹配&#xff0c;并执行匹配的模式对应的代码。模式可以是字面值、变量名、通配符等…...