Centos使用Milvus进行以图搜图

因为一些原因,准备在服务器上搭建一个以图搜图的服务。

然后调研了一下,找到了towhee+Milvus的方法进行图片搜索

Milvus搭建

其实搭建教程非常简单,只需要按照官网的步骤一步一步就行了。

搭建主要利用的是docker-compose,如果是旧版的话可以直接用docker也行。

image-20221213140320389

选择自己需要的版本即可。

这里需要注意的一点就是python环境下使用Milvus的话,需要安装对用版本的pymilvus

我自己安装的是v2.0.x

下载YAML文件

找一个文件夹然后下载 milvus-standalone-docker-compose.yml 并将它保存为 docker-compose.yml

1
$ wget https://github.com/milvus-io/milvus/releases/download/v2.0.2/milvus-standalone-docker-compose.yml

运行Milvus

之后在该文件夹中使用使用docker-compose运行启动Milvus

1
2
3
4
5
6
7
8
9
10
11
12
[root@m0 milvus-2.0.0]# docker-compose up -d
Creating milvus-etcd ... done
Creating milvus-standalone ... done
Creating milvus-etcd ...
Creating milvus-standalone ...

[root@m0 milvus-2.0.0]# docker-compose ps
Name Command State Ports
-------------------------------------------------------------------------------------
milvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp
milvus-minio /usr/bin/docker-entrypoint ... Up 9000/tcp
milvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp

停止Milvus

想要停止Milvus:

1
sudo docker-compose down

停止后删除数据:

1
sudo rm -rf  volumes

可视化界面

前往Github下载Attu

直接附一份docker的命令

1
docker run -p 8000:3000 -e MILVUS_URL={milvus server ip}:19530 zilliz/attu:latest

其中milvus server ip示例:127.0.0.1

之后开放端口就可以使用了。

image-20221213172525057

image-20221213172552978

在代码中使用milvus的时候,注意库的版本。

如:python需要安装对印的pymilvus版本。

之后正常操作就可以了。

可以从Github上下载示例examples,然后对应官方的一篇中文示例照着操作就可以了。

推荐使用Jupyer来进行操作

一定要注意,版本必须对应才行。

使用ChatGPT

最近超级火的ChatGPT只能说非常好用。

使用了几天发现真的真的很不错,唯一不好的地方就是不支持大陆使用。

这里附一份注册教程分享给大家。

前几天,OpenAI 推出超神 ChatGPT ,非常火爆。但是呢,因为不可抗力原因,大部分人无法体验到。这里我分享一下注册的攻略。

准备

  • 首先能能访问 Google (前置条件,不能明确说,懂得都懂)

  • 你得有一个国外手机号,GV 号肯定不行。

  • 注册短信平台并充值

    image.png 接码费用一次为 10.5 卢布,大约 1.2 人民币。因为充值默认为美元,可以选择充值 1 美元进去,

    image.png

    注册 OpenAI 账号

    • 打开

      https://beta.openai.com/signup

      页面进行相应的注册。

      • 这里同样需要你能访问 Google 且 ip 不是香港,最好是美国、新加坡等等,不然会提示不能在当前国家服务。
    • 注册成功进入下面填写手机号的页面

    image.png

    准备接码

    这里需要注意下的就是,目前好像就只有巴西和印度支持了,之前我选的印尼,是可以收到码的。

    image.png

    image.png

    • 然后再刚刚填写手机号码的页面填入申请的手机号

    开始使用 ChatGPT

    注册完后,我们去 ChatGPT 网站去登陆。https://chat.openai.com/auth/login

    image.png

ps:

  • 文章原创链接大概是https://www.v2ex.com/t/900126?p=2,我是在这里看到的
  • 手机号选择可以是印度尼西亚Indonesia,如果都不可以使用的话,可以试试巴西等稍微贵的手机号码
  • 注册后会有3个月的试用期,可以花18刀,在账户管理里可以查看

image-20221206210231606

image-20221206210321917

  • 再就是生成一个API Keys就可以在代码中使用了。

如果提示国家不允许使用的话,可以用以下命令在谷歌浏览器的网址栏中输入回车即可(必须是非国内代理)

1
javascript:window.localStorage.removeItem(Object.keys(window.localStorage).find(i=>i.startsWith('@@auth0spajs')))

Linux部署kafka 使用docker部署kafka

  1. 安装docker
1
curl -fsSL https://get.docker.com  bash -s docker --mirror Aliyun
  1. 安装zookeeper
1
docker run -d --name zookeeper -p 2181:2181 wurstmeister/zookeeper
  1. 安装kafka
1
docker run  -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://kafka:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka

zookeeper和kafka替换成本机地址即可

  1. 安装kafka-ui-lite
1
docker run -d -p 8889:8889 freakchicken/kafka-ui-lite
  1. 开放端口8889以及9092端口
1
2
3
firewall-cmd --add-port=8889/tcp --permanent
firewall-cmd --add-port=9092/tcp --permanent
firewall-cmd --reload
  1. 访问服务器ip:8889即可访问kafka-ui界面。

navicat16激活破解教程中文版设置

首先我一开始是找了个一个英文版的navicat16破解版,但是感觉英文版看着好别扭,所以就想给他改成中文版,但是当时下载的版本并没有更改语言的选择,所以从官网重新下载了一个,之后把安装目录设置到原来的目录下就可以了。

但是换成新的版本就会造成一个问题以前的破解失效了。

所以就需要重新破解,在吾爱上发现可以通过修改注册表来进行重新试用,但是实际操作发现并没有什么用。

于是尝试了一下别的,也就是本文的主角navicat-keygen

这个其实已经有教程了,我简单说一下步骤。

首先需要将文件编译出来,这里需要

  1. Visual Studio 2022 或者更高版本。因为这是一个VS2022项目。
  2. vcpkg 以及下面几个库:
  • fmt:x64-windows-static
  • fmt:x86-windows-static
  • openssl:x64-windows-static
  • openssl:x86-windows-static
  • rapidjson:x64-windows-static
  • rapidjson:x86-windows-static
  • keystone:x64-windows-static
  • keystone:x86-windows-static
  • unicorn:x64-windows-static
  • unicorn:x86-windows-static

vcpkg的安装

  1. 从git下载git clone https://github.com/microsoft/vcpkg
  2. 添加到环境变量D:downloadvcpkg
  3. 使用powershell打开bootstrap-vcpkg.bat这里建议加上代理$env:HTTP_PROXY="xxx" $env:HTTPS_PROXY='xxxx',然后就会下载一个vcpkg.exe的文件
  4. 输入vcpkg integrate install
  5. 安装vcpkg环境
1
2
3
4
5
6
7
8
9
10
vcpkg install fmt:x64-windows-static
vcpkg install fmt:x86-windows-static
vcpkg install openssl:x64-windows-static
vcpkg install openssl:x86-windows-static
vcpkg install rapidjson:x64-windows-static
vcpkg install rapidjson:x86-windows-static
vcpkg install keystone:x64-windows-static
vcpkg install keystone:x86-windows-static
vcpkg install unicorn:x64-windows-static
vcpkg install unicorn:x86-windows-static

navicat-keygen通过git下载到本地并解压

1
git clone -b windows --single-branch https://notabug.org/doublesine/navicat-keygen.git

然后打开Visual Studio,打开前面下载的navicat-keygen项目文件。

image.png

将debug改成release

image.png

选择 生成 > 生成解决方案

image.png

生成完成后,你会在 bin/ 文件夹下看到编译后的keygen/patcher。

之后根据教程进行注册即可,记得要把网络断了。

或者修改host127.0.0.1 activate.navicat.com这样也可以达到断网的效果。

  1. 使用navicat-patcher.exe替换掉navicat.exelibcc.dll里的Navicat激活公钥。
1
navicat-patcher.exe [-dry-run] <Navicat Install Path> [RSA-2048 PEM File Path]
  • [-dry-run]: 运行patcher但不对Navicat程序做任何修改。

    这个参数是可选的。

  • <Navicat Install Path>: Navicat的完整安装路径。

    这个参数必须指定。

  • [RSA-2048 PEM File Path]: RSA-2048私钥文件的完整路径或相对路径。

    这个参数是可选的。 如果未指定,navicat-patcher.exe将会在当前目录生成一个新的RSA-2048私钥文件。

例如:(在cmd.exe中)

1
navicat-patcher.exe "C:\Program Files\PremiumSoft\Navicat Premium 16"

Navicat Premium 16.0.7 英文版 已通过测试。下面将是一份样例输出:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
***************************************************
* navicat-patcher by @DoubleLabyrinth *
* version: 16.0.7.0 *
***************************************************

[+] Try to open libcc.dll ... OK!

[*] patch_solution_since<16, 0, 7, 0>: m_va_CSRegistrationInfoFetcher_WIN_vtable = 0x00000001837759f0
[*] patch_solution_since<16, 0, 7, 0>: m_va_CSRegistrationInfoFetcher_WIN_GenerateRegistrationKey = 0x0000000181fa52d0
[*] patch_solution_since<16, 0, 7, 0>: m_va_iat_entry_malloc = 0x0000000183439bd0
[+] patch_solution_since<16, 0, 7, 0>: official encoded key is found.

[*] Generating new RSA private key, it may take a long time...
[*] Your RSA private key:
-----BEGIN RSA PRIVATE KEY-----
MIIEpQIBAAKCAQEAvxaFFjTE6hi80nhjgfFMM3yPer122OIWIbbumFIuAOcCF6D3
PnRHBdP9IqB99K6Nv6vKK3Jf0Y+dc5ETrg0l0AHYq+dTFTiWusHuRMx6xFjWzO96
7mFmJq6P28dUucKnr6yG1TQeZaq+mHh2DNEnNEYgV7cLVT1unUmMOL/PBh/eCcaJ
8hQNTQafQQknzCnAKC89v33y+rKInJNy9B+zSB0BGCz+eS8MKf6zc78JMSOnF2uj
NK+QEwaYw8lAbJve1F+rCQS0mbm0QvHhZYZrblVHI5l/8LkX5qBtKw7duUhXHxmO
fQieF23bBk9HDp5uQUGsdbKX6ZWitn/h926xyQIDAQABAoIBAQCHXxDRdni5zuSV
xivYdnUhVHDg5zA23ZQINmw5BJ8KjJzy2FnPqNhXzKJb0Y7ptG8/BhinRtOSxkcp
A/IJL89F2MkCn1JAimJd091UZ/fg+X7SmCVikyWm6auIa2IeZ0QcNAEhMVcHdzqn
EU+wLMu1QKjQ+x/QN0ERtHTeDyQ+lUNB+bvAjx3LHN9Zh8weVBHHtwDoyyZDdJPw
NWgpgcW+uYzlT66uh7LPPaRsEZgAkPIkhzZnwmugXdhlWxtYHKTEfe5gCqubQICc
I/x1yBP1EZFm6qBQD4/49775ZbXwxgaWvBXG+Aah9x8JYtVUS4MgrAiC4a8NQqFp
nwKVjUIBAoGBAOWsj9GGb2KYbfLzJNRrSxhs4TUBfpHteKSm2pL92NAbIOjssNhL
hLY3gBFX2RnYmoGD6YT84JNykuAictgAd5GwvLIbaVF9l7MQn8APRbe2CzQ+/494
9hpn33MZOBNd3I+a5+2qoFbXI04loyYDJkkeOqbwZzJjs7k9HmZMNwY5AoGBANT9
tRFWFDvA0pPgGoHhzlsAUAmrbSfCPkhrRXpE9fgl3VnV+NRtjCf9NhJt0uaIokZ5
oSf+jClcwU8N4EvGxMBaCHTqBzgc4dLPWpMAhPoMjjv1Oyug2iBcuTasHVP+Jdgq
CaNzpXOuq4upaaNrq+QMsI6O9wA/zWhWPmnYQYgRAoGAUk56471noU+65zvXUQB6
UvCB7Hrynt0ZRPg+kDrEPh/atV5NKdY2Yw6UqKJwvOBwzkU1pGDzIiQHGqd9vIa+
Usmhdbp5DakSeitU9IEEnQdyEHEbKJFSsLfUzeyVuesDJbt/rh5dg4Fpt5GpW+/5
Am8A2d6BPP+Z4qJSiJp7hZECgYEAy64TCZEXqEytE1yr/KjDfaK+54BX0j2e8gIj
XtmznqoXE2Hboslfzp4Gp3j+xhbDmEGYK3bw8l0RP1g1tkFOxeNTUvq6DJ8SFVbV
dt54S+bV3eCVxRL9hRUmyXGuWjQgXKdWsEhXYFkZE2Xe77h3mI3KCYoOCt74v146
MV3szQECgYEAozTO7Wuum+VMKIY35hmHMjUiYmLl3EXWwMBT2VSsk8Siu0XoH0yd
KoxsLDUBMS8sWKCZhFwU+Fx8UZjfo+xE3H4UTyVsw5EDpB9gSud928gNADwxTKor
3s4jnUzb4XRQ0qN2jXzdNuqXNV1ozeqajbM2oSZqbSnWSs5g6DpIs1Q=
-----END RSA PRIVATE KEY-----

[*] patch_solution_since<16, 0, 7, 0>: Patch has been done.
[*] New RSA-2048 private key has been saved to
C:\Users\DoubleSine\source\repos\navicat-keygen\bin\x64-Release\RegPrivateKey.pem


*******************************************************
* PATCH HAS BEEN DONE SUCCESSFULLY! *
* HAVE FUN AND ENJOY~ *
*******************************************************
  1. 接下来使用navicat-keygen.exe来生成序列号和激活码
1
navicat-keygen.exe <-bin-text> [-adv] <RSA-2048 Private Key File>
  • <-bin-text>: 必须是-bin-text

    如果指定了-binnavicat-keygen.exe最终将生成license_file文件。这个选项是给Navicat旧激活方式使用的。

​ 如果指定了-textnavicat-keygen.exe最终将生成Base64样式的激活码。这个选项是给Navicat新激活方式使用的。

这个参数必须指定。

  • [-adv]: 开启高级模式。

    这个参数是可选的。 如果指定了这个参数,navicat-keygen.exe将会要求你手工填写产品ID号、语言标识号。这个选项一般是给以后用的。

  • <RSA-2048 Private Key File>: RSA-2048私钥文件的完整路径或相对路径。私钥必须是PEM格式的。

    这个参数必须指定。

例如:(在cmd.exe中)

1
navicat-keygen.exe -text .\RegPrivateKey.pem

你会被要求选择Navicat产品类别、语言以及输入主版本号。之后会随机生成一个序列号。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
***************************************************
* navicat-keygen by @DoubleLabyrinth *
* version: 16.0.7.0 *
***************************************************

[*] Select Navicat product:
0. DataModeler
1. Premium
2. MySQL
3. PostgreSQL
4. Oracle
5. SQLServer
6. SQLite
7. MariaDB
8. MongoDB
9. ReportViewer

(Input index)> 1

[*] Select product language:
0. English
1. Simplified Chinese
2. Traditional Chinese
3. Japanese
4. Polish
5. Spanish
6. French
7. German
8. Korean
9. Russian
10. Portuguese

(Input index)> 0

[*] Input major version number:
(range: 11 ~ 16, default: 16)> 16

[*] Serial number:
NAVL-GFKA-T5SR-ZFTK

[*] Your name:

你可以使用这个序列号暂时激活Navicat。

接下来你会被要求输入用户名组织名;请随便填写,但不要太长。

1
2
3
4
[*] Your name: Double Sine
[*] Your organization: PremiumSoft CyberTech Ltd.

[*] Input request code (in Base64), input empty line to end:

之后你会被要求填入请求码。注意 不要关闭命令行 .

  1. 断开网络 并打开Navicat。找到注册窗口,并填入keygen给你的序列号。然后点击激活按钮。
  2. 一般来说在线激活肯定会失败,这时候Navicat会询问你是否手动激活,直接选吧。
  3. 手动激活窗口你会得到一个请求码,复制它并把它粘贴到keygen里。最后别忘了连按至少两下回车结束输入。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
[*] Your name: Double Sine
[*] Your organization: PremiumSoft CyberTech Ltd.

[*] Input request code (in Base64), input empty line to end:
CpgnfbIJGmAcxCuo/pAb8EeoS0audZn2NNemg6c3NPK/dWgb343IZQrFwoBZY6lpxE4Fq1BoNmCM75P03XpiXQ+hErcvFWk6iQPDCk/d4msf/AoprIqAMpXFoFLkeP0G93UIIEeBsUej8SrxdDgQDM585iPok5fUW+fTDCD1VICr7DBdL3c/69IxeIgiOQSuImdIQiM3/EOfDiFbAJL9vHW5LxFT8jj+8RPXehwPTBphpInmGdzxVZUZJwAGlXt7orrRbzafdeBjz6MnTajTcJP3SS2dBCiR33UScnyxYGEXdzv7+QLScTmCvI7gqg3Z8DMhroKMoHmy1AvC16FKVw==

[*] Request Info:
{"K":"NAVLGFKAT5SRZFTK", "DI":"7D48FCBD093C778879A1", "P":"WIN"}

[*] Response Info:
{"K":"NAVLGFKAT5SRZFTK","DI":"7D48FCBD093C778879A1","N":"Double Sine","O":"PremiumSoft CyberTech Ltd.","T":1644387294}

[*] Activation Code:
vwLGmQIWg/DtzHMcaKCDHAjTcBNbTo2VmNllphUSUMgGjgvL6v82ue+GqXB6M/qn48Rj4D4Joqqisr6UwMSclNmQxOQz4RftEpLtG6KBjDo4LM71qn9R/jWoZV5EoHPQkX5gzhO/D7GammrRGn2MV+zI6dJ4c4SBFNnNyjAeEqNzinrQwjB7lUVTlpHEe/SMrdCsGliPZQ/X+5ASbEsq3D8PZsjysJv98MIJrZvdTdznrRe8JzYP+8sbIPQMIX1UDmdyDpbpSl45N92OhO4htz1kFjUEfnrwY0GMOhdYHv/PfMI7RiQzkRyY7pLvX7muJ4dkA+CmMmwew3gy3MWjig==

如果不出意外,你会得到一个看似用Base64编码的激活码。直接复制它,并把它粘贴到Navicat的手动激活窗口,最后点激活按钮。如果没什么意外的话应该能成功激活。

JetBrains全系列软件激活教程激活码Windows mac通用方法

之前一直用的无限重置,但是发现最近有点不是很好用。

然后找了一圈发现好像很早以前的那个激活时长改到2099年的还好使,所以准备把自己的ide改成2099年。

首先需要下载一个jar文件https://wwu.lanzoub.com/i7GF608g24ta

然后把他解压到自己的用户文件目录下

C:\Users\用户名

mac的话,也是放在用户目录下。

之后去https://www.jetbrains.com/官网下载需要的版本,这里推荐的是2021.1.3这一版本的ide。

  1. 下载安装,然后打开ide进入激活界面。
  2. 之后找到安装目录下的xxx64.exe.vmoptions文件
  3. 在文件末尾添加-javaagent:/Users/用户名/fineagent.jar 如果不是装在c盘,请修改成对应的文件路径如E:fineagent.jar
  4. 关闭ide,重新打开
  5. 选择Activation Code然后输入下方激活码进行激活即可。
1
5AYV1D1RE5-eyJsaWNlbnNlSWQiOiI1QVlWMUQxUkU1IiwibGljZW5zZWVOYW1lIjoiaHR0cHM6Ly93d3cuaml3ZWljaGVuZ3podS5jb20iLCJhc3NpZ25lZU5hbWUiOiIiLCJhc3NpZ25lZUVtYWlsIjoiIiwibGljZW5zZVJlc3RyaWN0aW9uIjoiIiwiY2hlY2tDb25jdXJyZW50VXNlIjpmYWxzZSwicHJvZHVjdHMiOlt7ImNvZGUiOiJJSSIsImZhbGxiYWNrRGF0ZSI6IjIwOTktMTItMzEiLCJwYWlkVXBUbyI6IjIwOTktMTItMzEifSx7ImNvZGUiOiJBQyIsImZhbGxiYWNrRGF0ZSI6IjIwOTktMTItMzEiLCJwYWlkVXBUbyI6IjIwOTktMTItMzEifSx7ImNvZGUiOiJEUE4iLCJmYWxsYmFja0RhdGUiOiIyMDk5LTEyLTMxIiwicGFpZFVwVG8iOiIyMDk5LTEyLTMxIn0seyJjb2RlIjoiUFMiLCJmYWxsYmFja0RhdGUiOiIyMDk5LTEyLTMxIiwicGFpZFVwVG8iOiIyMDk5LTEyLTMxIn0seyJjb2RlIjoiR08iLCJmYWxsYmFja0RhdGUiOiIyMDk5LTEyLTMxIiwicGFpZFVwVG8iOiIyMDk5LTEyLTMxIn0seyJjb2RlIjoiRE0iLCJmYWxsYmFja0RhdGUiOiIyMDk5LTEyLTMxIiwicGFpZFVwVG8iOiIyMDk5LTEyLTMxIn0seyJjb2RlIjoiQ0wiLCJmYWxsYmFja0RhdGUiOiIyMDk5LTEyLTMxIiwicGFpZFVwVG8iOiIyMDk5LTEyLTMxIn0seyJjb2RlIjoiUlMwIiwiZmFsbGJhY2tEYXRlIjoiMjA5OS0xMi0zMSIsInBhaWRVcFRvIjoiMjA5OS0xMi0zMSJ9LHsiY29kZSI6IlJDIiwiZmFsbGJhY2tEYXRlIjoiMjA5OS0xMi0zMSIsInBhaWRVcFRvIjoiMjA5OS0xMi0zMSJ9LHsiY29kZSI6IlJEIiwiZmFsbGJhY2tEYXRlIjoiMjA5OS0xMi0zMSIsInBhaWRVcFRvIjoiMjA5OS0xMi0zMSJ9LHsiY29kZSI6IlBDIiwiZmFsbGJhY2tEYXRlIjoiMjA5OS0xMi0zMSIsInBhaWRVcFRvIjoiMjA5OS0xMi0zMSJ9LHsiY29kZSI6IlJNIiwiZmFsbGJhY2tEYXRlIjoiMjA5OS0xMi0zMSIsInBhaWRVcFRvIjoiMjA5OS0xMi0zMSJ9LHsiY29kZSI6IldTIiwiZmFsbGJhY2tEYXRlIjoiMjA5OS0xMi0zMSIsInBhaWRVcFRvIjoiMjA5OS0xMi0zMSJ9LHsiY29kZSI6IkRCIiwiZmFsbGJhY2tEYXRlIjoiMjA5OS0xMi0zMSIsInBhaWRVcFRvIjoiMjA5OS0xMi0zMSJ9LHsiY29kZSI6IkRDIiwiZmFsbGJhY2tEYXRlIjoiMjA5OS0xMi0zMSIsInBhaWRVcFRvIjoiMjA5OS0xMi0zMSJ9LHsiY29kZSI6IlJTVSIsImZhbGxiYWNrRGF0ZSI6IjIwOTktMTItMzEiLCJwYWlkVXBUbyI6IjIwOTktMTItMzEifV0sImhhc2giOiIxMjc5Njg3Ny8wIiwiZ3JhY2VQZXJpb2REYXlzIjo3LCJhdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlLCJpc0F1dG9Qcm9sb25nYXRlZCI6ZmFsc2V9-HNPogO0kWkHCVMnsjmBXUqQt87UPHqdkYqZGveSJtu8hb2V2Yq7gHsHenp4UuEd3jwEwC+YrUIf7U5yDA/56F5Sdn0RLUHZX5DHeQbJPbmYCBsDRT7m8rnmMFOSZn3vwNatvv1cooZbcGOk3Wwxx6bF7XcgaIrmXRcmZMZgv2PZehr0WS1HxNKe3X4nbGP3MwiSbg4ypmxNDrljmgv+Si9QDDwNLDffqeO0Lce0FqEJuMWmvBS42S0aeIYF8IS5bp4+LFKLJ8T7tF40OxKYDurBb9+9c43GZBscM/eLB8Jos66jNGFwgebFUlvhzJKVHZtuc/N8zGeEnTq6K0T/B8w==-MIIDTjCCAjagAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMCAXDTE4MTEwMTEyMjk0NloYDzIwOTkwODA5MDIyNjA3WjAfMR0wGwYDVQQDDBRwcm9kMnktZnJvbS0yMDIwMTAxOTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMK3eyr0+Oys/TwcQO+qYaXWGBmXcEP4fR0bHHzZd/4WNGltXhecM80OWthA38BQRYAJBCKz/dSkO2Kj1H2y+7KB5cIaOiJEyTESfTSgzQdot6laRBU8oxy9mmagI46M8zEEmplPybY4YJj4HOwZiBsMQEMxoTgMDLpuHX6uASoVhSj6koB55lOj4wEgsQBeAMWTAXmTl88ixE179J8aBUkBGpL8w/tZzl9BJXZNF15gPfkS58rw8cdPzXLS0Yym37A2/KKFhfHzJc5KhbaxqYzmkAfTMqPsIqCQ1lQUAqfiPn2gN2I1Z3/cQuEW27M55fXVr2DduQe5DWzYJs85L50CAwEAAaOBmTCBljAJBgNVHRMEAjAAMB0GA1UdDgQWBBQk2hEilvWFQcCTR+gxI0z0wIQC/zBIBgNVHSMEQTA/gBSjnrZIZ0ISNkG9beC5tKBSi5fxs6EcpBowGDEWMBQGA1UEAwwNSmV0UHJvZmlsZSBDQYIJANJssYOyg3nhMBMGA1UdJQQMMAoGCCsGAQUFBwMBMAsGA1UdDwQEAwIFoDANBgkqhkiG9w0BAQsFAAOCAQEAsCQBjO5wttco/Z5cj/o4GBrku8UtBBBVFq4xsBanshTHm4deVxcTvta4aScV0TPKcaLqGqWx8A9v8XXO8dBbCuyXvWZteZ/C2Covg1xXiM99lz7VxqpjVmLdKanZn5u0gQSiYJdcfF+TdbmEIeSOnN/kLXNq2hXdJQK2zk2J25UZqu5EibRtTbdOzw6ZcfwJ8uOntXfsmAhnNICP3Wf/4wR/mwB0Ka4S+JA3IbF5MUmUZ/fjUaFarnin70us+Vxf/sZUi7u67wilvwVV0NAqDpthHUV0NRc4q+yOr2Dt/uCHdy4XRXLJfAv/z9/xBwNZZALNz3EtQL6IeIWWJByl3g==

然后就可以得到一个到期时间为2099年的ide

image.png

node.js爬虫教程 node.js安装

首先,既然学爬虫,那么其实最重要的一点就是要安装node.js。

这里我用的是Windows系统,重新用虚拟机开了一个全新的windows10系统。

然后我们百度搜一下nvm,然而其实并没有找到直接的下载地址,唯一的一个GitHub是Linux的。
nvm百度搜索结果

所以我们直接打开GitHub,在GitHub上找一下。

nvm GitHub

不错,找到了windows版本的nvm。

找到他的releases,之后下载最新版的即可。

https://github.com/coreybutler/nvm-windows/releases

nvm GitHub
nvm GitHub

下载之后解压,然后右键管理员打开,一路安装即可。

之后安装完成nvm,打开cmd窗口。
nvm GitHub

输入nvm查看安装是否成功。
可以看到,安装成功了,那么我们直接nvm install lts安装最新的稳定版,目前是16.15.0。
nvm GitHub

安装完成之后,打开一个管理员权限的cmd窗口,然后输入nvm 16.15.0然后输入node -v就能看到成功安装node.js了。
nvm GitHub
nvm GitHub

mac安装nvm的话可以直接去GitHub上下载

1
2
shell notranslate position-relative overflow-auto
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh bash
1
2
shell notranslate position-relative overflow-auto
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh bash

之后将nvm添加到环境中

1
2
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm"  printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm

1
source ~/.bash_profile

即可使用

node.js爬虫教程 vscode安装

安装完成node.js后,我们需要一个编辑器来进行代码的编写。

目前我觉得比较好用的一个是vscode,一个是webstorm。

这两个我比较推荐使用vscode,因为webstorm有一个很致命的问题,就是他的终端不能解析一些编码格式的内容,比如说表情,就会导致非常的难受。

并且vscode免费,而webstorm是付费的,高下立判。

百度搜索vscode,然后向下拉,找到一个全英文的链接。
node vscode

然后找到download for windowsnode vscode
之后找到适合自己的版本进行下载,然后一路确认安装即可

node vscode
之后打开拓展,安装一下中文插件,重启,就能获得中文界面了。

node vscode

node.js爬虫教程

目前有想法做一套简单的node.js的爬虫教程。
其实这是因为目前node.js的爬虫教程有点少,但是node.js写爬虫其实效果还是非常不错的。所以本着技术共享,共同提升的想法,准备简单的出一套node.js的爬虫教程。

首先其实简单说一下,如果是前端想要学爬虫,我建议学node.js来做爬虫,这是因为node.js是使用的v8引擎,直接用JavaScript代码写就可以了,上手快。
如果是有一定经验的话,也可以学习一下node.js爬虫。

如果是新手入门的话,我其实建议还是使用python来开发爬虫。

目前的想法是简单介绍一下node.js然后直接上实战。

分别使用几个目前我觉得比较好的库进行网站爬取。

网站就不挑难得了,主要是介绍一下这几个库。

  1. Puppeteer
  2. Axios
  3. Request
  4. Node-fetch

目前是准备介绍一下这4个库。

然后爬取的网站,是分了下面的这几个站。

1
2
3
4
5
6
7
[http://www.espn.com/nba/salaries] nba薪资
[https://www.datehoer.com/] 博客
[https://yt.lianjia.com/ershoufang/] 链家二手房
[https://www.baidu.com/s?wd=美国50年来首次披露UFO影像] 百度搜索
[http://www.kuwo.cn/rankList] 酷我音乐
[https://ss.netnr.com/wallpaper] 壁纸
[https://www.zhihu.com/]知乎登录

目前的想法是每个库都写一个站来做说明。
当然也就是简单的爬个几页,其实就是像前面说的一样,主要是为了介绍,然后提出来这个东西,方便大家共享自己的经验。

已完成录制:
node.js安装 待上传

vscode安装 待上传

待完成:
简单的爬虫
使用puppeteer爬取博客
通过axios爬取美国nba球员薪资
使用request爬取链家二手房
使用node-fetch爬取百度搜索结果,酷我音乐,壁纸
使用puppeteer登录知乎