Groot 博客

一些博客记录,笔记,思路记录

jupyter notebook

魔法命令

Numpy 安装与导入

安装

1
pip3 install numpy

机器学习

机器学习:学习一种学习算法,从数据中学习并建立成模型来对新的数据进行预测的计算科学。

适用于:

1.不存在已知算法解决方案的复杂问题

2.需要大量手动调整或者规则列表超长的问题

3.可以适应环境波动的系统

基础概念:

1.提供给算法的包含所需解决方案的训练数据,称为标签

2.属性加上其值,就是特征

3.通过给定的特征来预测一个目标数值,叫回归任务

4.用于训练模型的数据叫数据集

5.用于测试模型精度的数据叫测试集

6.每一条数据叫一个样本(x),样本对应的结果叫标签(y0)

7.模型在训练数据上表现良好,泛化不好叫过度拟合,反之欠拟合

8.模型训练就是通过训练数据找到算法最合适的参数

核心问题:算法好坏和数据好坏

复杂问题,数据比算法更重要

数据处理主要解决的问题:

1.数据量不足

2.训练数据不具备代表性

3.质量差的数据

4.特征筛选

阅读全文 »

爬虫

Anaconda下载安装

https://www.anaconda.com/distribution/#download-section

使用jupyter可实话

1
2
3
4
# 安装
pip install jupyterlab
# 运行
jupyter notebook

爬虫分类

通用爬虫

聚焦爬虫

增量式:

反爬虫机制

反反爬策略

robots.txt 协议:遵从或者不遵从

下载fiddler抓包工具

request模块

指定url

发起请求

获取响应对象中的数据

持久化储存

re模块

Redis 基础

redis 基本认识

使用场景

为什么快

  • 基于内存存储数据
  • Recator 模型(IO多路复用)
  • 单线程应用

数据结构

SDS (简单动态字符串)

简单动态字符串(simple dynamic string, SDS)

特点:

  • 获取长度复杂度 O(1),通过 len 字段
  • 拼接字符串,会先扩容,再拼接,并且容量会有剩余
  • 空间预分配
  • 惰性空间释放,通过 free 属性
  • 二进制安全,通过字节数组,而不是数组保存每一个字符,将字符拆分来保存

与 C 字符串区别:

  • c字符串中,最后一个元素是空字符 \0,使用长度为 N+1. (SDS 也有)
  • 获取长度要遍历计数。
  • 容易造成缓冲区溢出,如果没有分配足够的空间,可能会使相邻数据的内容被意外修改
阅读全文 »

Git

初始化Git

1
git init

查看被托管的文件

1
git status

托管文件

1
git add . # 点就代表所有文件,

第一次复制

1
git commit -m '名称'

文件检测到,需要重新提交

查看修改日志

1
git log

回到第一次提交状态,本地文件会回滚gitgit

1
git reset --hard # + 第一次 commit 后面的内容或者 reflog 后面的内容

查看以前的状态:

1
git reflog

上线:

1.git 删除远程地址

git remote rm origin
2.git 更换远程地址

git remote add origin http://10.00.3.260:10080/xxxxxx/sxxxy.git/
3.把当前分支与远程分支进行关联(branchname要改成你的当前分支名称)

git push –set-upstream origin branchname

接下来,我们就要开始配置了。

通过 git remote add <name> <url-of-remote> 指令来添加远程仓库。

name 是远程仓库的别名,便于区分不同的远程仓库。

url-of-remote 是我们的远程仓库链接,就是平时看到的以.git为后缀的链接啦!

比如,我想添加github的远程仓库,并且取名为 github:

1
git remote add github https://github.com/gongqingfeng/Drcom.git

至于链接来自于哪,这里就不用我多说了吧!添加码云的远程仓库也是类似的操作,因为我前面假设的是clone自码云,所有这里就不需要添加了。

好,来看一下我们刚刚添加好的仓库:

1
git remote -v

这条指令就是用来查看远程仓库的。

强制推送

1
git push origin master -f

Flask

初次认识

内置 session

三方组件全,

缺点:稳定性相对较差,核心要变,三方组件要更新

最简单的使用

1
2
3
4
5
6
7
8
9
from flask import Flask

app = Flask(__name__)

@app.route("/")
def index():
return "Hello World"

app.run()

Resopnse 三剑客:

HttpppResponse: return “Hello World”

render:return render_template(“login.html”)

与django中的render 使用一致

redirect: return redirect (“/”)

跳转,重定向

Flask中小儿子:

  1. from flask import jsonify

return jsonify() 返回 json 标准的字符串

content-type:application/json

  1. return send_file()(打开并返回文件内容,自动识别文件格式)
阅读全文 »

Linux

redhat 发行版,收费版的Linux

SUSE Linux 德国版,常用于移动电信支付领域

桥接网路模式

NAT 网络模式

就是在你宿主机的ip网络中,通过网络地址 转换你你你技术(NAT),

解决问题:

  1. ip 地址不够用
  2. 解决ip可能冲突的问题

为什么使用nat地址转换:

获取ip地址

阅读全文 »

Django

项目与应用的关系

1
django-admin startproject 项目名称

创建应用

python manage.py startapp 视图函数

启动项目

python manage.py runserver IP:PORT

(默认本机端口8080)

url控制器(路由)

  1. 简单分组
  2. 有名分组
  3. 分发
  4. 反向解析
阅读全文 »

MySql

第一章mysql 入门

MySQL是基于 c/s 架构的软件

添加环境变量到path

1
2
3
4
5
6
cmd 初始化
mysqld --initialize-insecure
net start mysql # 开启服务端
net stop mysql # 移除服务端
mysql --install # 安装服务 压缩包安装
mysql --remove # 移除服务

进程

1
2
tasklist |findstr msyql  # 查进程
taskkill /F /PID 进程号 #杀进程

忘记密码

1
2
3
4
5
6
# 1.先关闭服务
# 2.跳过授权表开启服务
mysqld --skip-grant-tables # 开启服务端的约束条件
mysql -uroot -p #客户端连接
update mysql.user set authentication_string =password('') where User ='root'; #更改密码
flush privileges; # 刷新权限

win10 中跳过授权表可以放在文件中更改 MySQL 中 my.ini 文件,无创建

阅读全文 »

Scrapy

scrapy 框架,异步爬虫框架。

同步与异步

同步:下一个方法依赖上一个方法,上一个没执行完,则下一个不会执行。

异步:下一个方法不依赖上一个方法,上一个没执行完,下一个依旧会执行。

组成:Pipeline 、Scheduler、Downloader、Spiders。以及Scrapy Engine 引擎(队列)

中间件:Spider Middlewares、Downloader Middlewares

Pipeline 主要用于处理IO 存储,写入本地获取的西悉尼

Scheduler 调度器,将所有的 url 发送给Downloader,并且去重网址,整合队列

Downloader 处理请求 requests,将 responses 返回给 Spiders

Spiders 是我们的爬虫文件

Scrapy Engine 引擎控制整个运转

spider middlewares 一般不用,爬虫将请求交给调度器时,进行处理。

Downloader Middlewares 加入请求头,加入代理 ip

阅读全文 »

node.js

  • node.js

    • Node.js不是一门语言
    • Node.js不是库、不是框架
    • Node.js是一个JavaScript运行时的环境
    • Node.js可以解析和执行JavaScript代码
  • 浏览器中的JavaScript
    • EcmaScript
      • 基本的语法
      • if
      • var
      • function
      • Object
      • Array
    • BOM
    • DOM
  • Node.js中的JavaScript
    • 没有BOM、DOM
    • EcmaScript
    • 在Node这个JavaScript执行环境中为JavaScript提供了一些服务器级别的API
      • 例如文件读写
      • 网络服务构建
阅读全文 »
0%