java爬虫
前言
Java 有很多好用的爬虫框架可供选择。以下是其中一些流行的爬虫框架:
Jsoup:Jsoup 是一个 HTML 解析器,可以方便地从 HTML 文档中提取数据。它可以模拟浏览器行为,解析 HTML 标签和属性,并提供了多种方法来选择和操作文档中的元素。
WebMagic:WebMagic 是一个基于 Java 的开源网络爬虫框架。它提供了强大的抓取和解析功能,支持多线程和分布式部署。WebMagic 还有一个基于注解的简单 API,可以方便地实现自定义的抓取逻辑。
HttpClient:HttpClient 是一个用于发送 HTTP 请求的 Java 库,可以用来构建爬虫。它提供了对多种 HTTP 协议的支持,可以处理 HTTP 请求和响应,并提供了多种方式来处理响应内容。
Selenium:Selenium 是一个用于自动化浏览器的工具,可以用来构建爬虫。它可以模拟用户在浏览器中的操作,如点击、滚动、输入等,并提供了多种方式来获取网页内容。
Spring Batch:Spring Batch 是一个用于批量处理的框架,可以用来构建爬虫。它提供了多线程、分步骤和分布式处理的支 ...
webMagic使用详解
webmagic 里面维持了一个请求队列,多个线程就是从这个队列里面请求
1234567891011121314151617181920 public static void main(String[] args) { Spider spider = Spider.create(new test1()).thread(5); // 开启五个线程去请求队列里面拿请求,然后请求服务器 for(int i=0;i<10;i++){ spider.addUrl("http://localhost:8888/?a="+i); // 请求这个地址会返回参数值 } spider.run(); }输出结果如下:get page: http://localhost:8888/?a=2get page: http://localhost:8888/?a=1get page: http://localhost:8888/?a=3get page: htt ...
http协议
前言
万维网构想三个部分:
页面文本标记语言 html ( 怎么表示页面)
传输数据的协议 http ( 怎么传输页面)
统一资源标识符 URI (资源在哪)
在所有的HTTP版本中,目前最流行的还是HTTP1.1这个版本
URI与URL
URI (统一资源标识符) 和 URL(统一资源定位符的区别) :
URI 可以用来标识任何资源(比如ftp,http,talent协议类型的资源),而URL 只能标识特定协议(http)的资源, URI 支持很多种协议,而URL 只支持http协议,URL 是 URI 的一个子集
所以咱们以后就说URI 就不会错啦,哈哈哈哈
后面的总结都是基于HTTP1.1来说的哦
请求方法
http协议支持的请求方法:
GET 主要用于向服务器获取资源
POST 主要用于向服务器传输资源
HADE 与GET方法类似,但是只获取响应报文的首部,不返回响应报文的主体
OPTIONS 询问支持的方法(在响应报文头部的Allow字段里面)
TRACE
CONNECT
PUT 用于上传资源
DELTE 用于删除资源
后面两个方法需要后端采用R ...
电路原理
基本概念
电流
单位时间通过横截面的电荷 I = dq/dt
电压
电场力移动单位电荷需要做的功等于电压 U = dw/dp
电位
从某点到某点的电压差
电动势
非电场力将单位正电荷移动做的功,一般只有电池电源有电动势
计算机科学速成课
半加器
全加器
实用软件
utools
强烈推荐, 能够为我们提供很多实用的工具, 基本上能囊括我这里面其他软件了
官网地址
quicker
这个也是强烈推荐, 搭配utools使用, 真的好用, 这个偏鼠标操作
官网地址
everything
这个软件是用来快速的搜索到某个文件所在的位置,它会将这个文件放进数据库中,然后读取到内存里面,这个可比windows自带的那个搜索功能快多了
官网地址
TreeSize
可以查看目录下具体子目录和文件的大小
破解地址
Typora
用于编写md文件
破解地址
clash
代理软件
网盘地址
手心输入法
干净无广告, 比较好用
窗口顶置
帮助其他软件窗口顶置
windowtop 下载地址, 破解地址
deskpins 下载地址
屏幕标记
论文阅读
zotero
readpaper
代码编写
vscode
idea的使用
部署项目到远程服务器
点击配置
配置好信息
配置好路径映射
打jar包
点击 文件->项目结构->工件
然后点击加号
创建工件
选择目录
构建工件
运行jar包
plantuml
时序图
我们可以通过一条一条语句来声明步骤,-> 代表实线
123456789@startuml用户 -> 认证中心: 登录操作认证中心 -> 缓存: 存放(key=token+ip,value=token)token用户 <- 认证中心 : 认证成功返回token用户 -> 认证中心: 下次访问头部携带token认证认证中心 <- 缓存: key=token+ip获取token其他服务 <- 认证中心: 存在且校验成功则跳转到用户请求的其他服务其他服务 -> 用户: 信息@enduml
声明参与者
上面那些框框都是可以变换形状的,我们只需要更改参与者的类型就可以了,可以指定的类型有
actor(角色)
boundary(边界)
control(控制)
entity(实体)
database(数据库)
collections(集合)
queue(队列)
格式就是:
participant “participantname” as participantothername 样式(颜色,顺序)
participant partici ...
node最新版本安装
前言
每次安装完了node,下次需要安装的时候有需要Google一下,每次搜到的教程肯定又不一样,肯定会有偏差,那还不如自己总结好
这个是下载node的官方地址
安装
windows安装node
下载msi文件
下载好后直接打开,中途选择路径的时候放D盘即可,其他直接无脑next,最后点击install就可以了
安装完后检查是否安装成功
这个是帮我们配置好环境变量的,当然我们也可以自己通过下载压缩包,然后把环境变量的方式配置上去,这样也可以,其实也没什么区别,看看他们产生的文件夹的区别吧
linux安装(centos7)
复制下载链接
12345678910111213#下载压缩吧到本地wget -c https://nodejs.org/download/release/v17.5.0/node-v17.5.0-linux-x64.tar.xz#解压压缩包tar -xf node-v17.5.0-linux-x64.tar.xz# 移动到指定目录,并且更改名字mv node-v17.5.0-linux-x64 /usr/local/lib/nodejs#添加到环境 ...
yaml语法
概述
基本语法
使用空格作为缩进
缩进空格数量不做要求,但是相同层级的左侧元素要对齐
低版本的不允许使用tab缩进,只能用空格
使用#做注释符,从字符到行尾,都算注释
使用 – 表示新的yaml文件开始
yaml支持的数据结构
对象
123person: name: djm age: 18
数组
123names: - djm - lpb
1names: [djm, lpb]