Tips汇总

爬虫领域

1. 加密参数值 Failed to load

在采集时遇到一个加密参数 Token,搜索 Token 的值,如果是从前面包中返回的,那相对比较好解决,因此进行搜索,却没有搜索到,那我就认为它是加密的算法。

这里其实有一个坑:Token 确实是从前面的请求返回的,但因为浏览器没有加载出来,所以搜索不到,在其中一个 url 中有 getToken 关键字,多么明显的提示。

在这里插入图片描述

发送请求,可以得到 token(我怀疑是网站为了反爬虫,故意进行了设置,导致响应内容 Failed to load):

在这里插入图片描述

2. 多渠道寻找绕过的方法

在企查查web端查询企业,必须要进行登录;在手机百度APP上使用企查查小程序则没有登录限制,因此需要先去广泛的多渠道尝试,说不定就会找到一些可以绕过的方法
一些主流网站的加密参数的破解方法,可以在网上去搜索,也许就有现成的。比如之前在寻找加密参数时的header[ 

遇到一个特别难的函数,根本看不懂里面的逻辑,以为只能准备补环境来解决了,没想到当在函数末尾打上断点后,发现了AES关键字,再挨个去看变量的值,发现就是一个AES的加密函数。

在这里插入图片描述

3. url编码

quote_plus是urllib模块提供的编码方法,默认采用utf-8进行编码,urllib模块下相似的还有quote

二者的区别在于对特殊字符编码的方式不一样 如

​ quote() 不编码斜线;空格‘ ’编码为‘%20’

​ quote_plus() 编码斜线为‘%2F’;空格‘ ’编码为‘+’ 等等

import json
from urllib.parse import quote_plusprint(json.dumps({"appId": 1, "platform": 3, "version": "6.24.0", "abtest": ""}))
print(json.dumps({"appId": 1, "platform": 3, "version": "6.24.0", "abtest": ""}, separators=(',', ':'))) # 使用更加紧凑的','和':'
print(quote_plus(json.dumps({"appId": 1, "platform": 3, "version": "6.24.0", "abtest": ""}, separators=(',', ':'))))# {"appId": 1, "platform": 3, "version": "6.24.0", "abtest": ""}
# {"appId":1,"platform":3,"version":"6.24.0","abtest":""}
# %7B%22appId%22%3A1%2C%22platform%22%3A3%2C%22version%22%3A%226.24.0%22%2C%22abtest%22%3A%22%22%7D
from urllib.parse import unquotetext = '%7B%22appId%22%3A1%2C%22platform%22%3A3%2C%22version%22%3A%226.24.0%22%2C%22abtest%22%3A%22%22%7D'
text = unquote(text, 'utf-8')
print(text) # {"appId":1,"platform":3,"version":"6.24.0","abtest":""}

日常领域

1. 打开 window 服务

window + R,打开运行框:

在这里插入图片描述

输入 services.msc 即可打开服务框:

在这里插入图片描述

2. 打开任务管理器

ctrl + shift + esc:

在这里插入图片描述

3. 测试设备间连接是否联通

PING IP

4. 查看 python 路径

查看当前使用的Python版本:

python -V

查看已有的Python版本和路径:( * 为默认使用的版本)

在这里插入图片描述

查看 python.exe 的位置:

在这里插入图片描述

5. pip 下载时使用清华源

pip install lxml -i https://pypi.tuna.tsinghua.edu.cn/simple

6. 将py文件打包成exe文件

在 py 文件的目录,在控制台输入:

pyinstaller -F app.py

7. requirements.txt

# 生成requirements.txt文件
# 方式1:所有类库包
pip freeze > requirements.txt  # 保存了保存当前Python环境下所有类库包# 方式2:当前项目
# 运行以下命令安装pipreqs : pip install pipreqs
# 在项目根目录下打开终端, 运行以下命令生成requirements.txt文件
# pipreqs . --encoding=utf8 --force
# 其中,.表示当前目录,–encoding=utf8指定编码为UTF-8,–force选项强制覆盖已存在的requirements.txt文件# 安装requirements.txt中的类库内容
pip install -r requirements.txt

8. cmd的使用

查找文件:

where filename

切换目录:

  • cd\ 回车,表示进入C盘根目录下
  • d: 回车,进入D盘当前目录,并不一定是根目录

环境变量

参考链接:https://www.bilibili.com/video/BV1w741147G9?spm_id_from=333.337.search-card.all.click&vd_source=d6ad5cfafb01e6a00d60b465dcb33865

作用:指明操作系统的重要目录在哪里

假如有个程序在运行时需要从系统目录(C:\WINDOWS)里读取文件,它是在所有磁盘上挨个寻找这个目录,还是让操作系统直接告诉它目录在哪里,明显后一种方式更加快捷高效,因此windows系统就约定,用systemroot来指明系统目录所在的位置,并把它放在环境变量下面
在这里插入图片描述

在运行对话框中输入cmd后,系统会尝试在path指明的目录中查找cmd这个程序,找到就运行它,否则就会提示找不到文件

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

除了系统变量,还有环境变量还包含用户变量,用户的环境变量是只针对当前登录的用户的,用户变量中也有个path,其作用和系统的path是类似的,

在这里插入图片描述

Linux基础命令

sudo -i命令格式: ls    : 列出当前所在目录ls   指定路径 : 列出指定目录下的文件ls /  : 列出根目录下的文件ls -a : 表示显示所有文件,包括隐藏文件ls -l : 以长格式的形式显示文件,等价于 llls -al : 选项可以连用,显示两个命令的全部信息man 命令:命令说明
eg:man  ls : 查看ls文档清屏:clear    或  Ctrl+ L(快捷键) cd : 切换目录  cd / :切换到根目录cd  ..   返回上一级目录cd  .    当前目录 cd 或 cd ~:回到用户家目录pwd: 以绝对路径的形式显示当前路径tab: 自动补全创建目录:
mkdir   位置+目录名eg:mkdir forbid   在当前位置下创建forbid目录eg:mkdir /tmp/consult   创建指定目录eg:一条命令创建多个目录: mkdir   forbid  /tmp/consulteg:创建层级目录:mkdir -p aa/bb touch : 创建文件(文件名后最好加后缀,不加也可以创建)eg:touch  alarm.txt       在当前目录下创建文件eg:touch /tmp/sweater.py  在指定目录下创建文件rmdir: 删除空目录,非空不能删除rmdir /tmp/tidy/rm: 删除目录或文件删除文件:rm /tmp/sweater删除目录加-r选项:eg:rm -r /home/wang/aa-f :强制删除,不再提示,默认选择是rm -rf  : 直接删除
为了方便记忆,无论删除任何目录或文件,都直接使用 :rm -rf 目录/文件/压缩包复制文件或目录(可以重命名)cp  复制谁 复制到哪里
复制文件 eg:cp /etc/passwd  passwd  
复制文件并重命名 eg: cp /etc/passwd  user   
复制目录:eg: cp -r land/  seed/        复制目录eg: cp -r land/  seed/guard   复制目录并重命名文件及文件夹的重命名:
mv : 剪切(可以重命名)
mv zf.py data_special_zf.py
mv new_passwd  seed/ensure  剪切文件并重命名
mv land/  seed/   剪切目录
mv seed/  land/mode 剪切目录并重命名删除和复制目录需要加 -r ,创建层级目录需要加 -p 查看文件内容:
1、cat:适合查看内容较小的文件
cat /etc/passwd2、more:分页查看,会显示百分比   enter 逐行查看;  空格  翻页查看  ;  q:退出
more -3 /etc/passwd   定义屏幕大小为3行 (可以自定义)
ctrl + b  往回翻       Ctrl + f   往后翻
more 不能显示二进制文件3、less: --显示文件名   enter 逐行查看  ;空格  翻页查看 ; q:退出(必须按q退出)
less -m /etc/passwd   -m 显示百分比
less -m /etc/passwd   -e 文件显示结束后,自动退出
less -m /etc/passwd   -N 显示行号
less -meN /etc/passwd  显示文件名、百分比、行号,结束时自动退出(三者相结合显示)4、查找关键字  
/关键字,回车    n 向下查找     shift + n  向上查找ctrl + b  往回翻,向上查找Ctrl + f  往后翻,向下查找5、head 从头开始查,从前往后head /etc/passwd    默认显示文件的前十行head -3 /etc/passwd  显示文件的前3行(可以自定义)6、tail 从尾开始查,从后往前tail /etc/passwd   默认显示文件的后十行tail -2 /etc/passwd   显示文件的后2行(可以自定义)-f : 查看实时写入的流式文件   ctrl + c  结束 echo '123456' >> speech.txt >>  追加写入,实时写入>   覆盖写入vi/vim编辑器:
类似于Windows里的记事本功能,用于编辑文本文件
vim是vi的升级版本,vim兼容vi的所有命令
vim编辑器三种模式:
命令模式:打开vim的时候,默认就是命令模式
使用vim编辑器打开文件后点击按键:i或a或o即可进入编辑模式。
i:在光标所在字符前开始插入 
a:在光标所在字符后开始插入 
o:在光标所在行的下面另起一新行插入
编辑模式:在命令模式下,按i/o/a键进入,可以任意编辑,左下角 -insert- ,按esc键退出到命令模式
最后行模式:在命令模式下,按shift + : 进入 左下角  -insert-显示 :  ,按esc退出到命令模式
w:保存   
q:退出   
wq:保存并退出   
q!:强制退出   (退出表示退出vim编辑器)命令模式: 
dd:删除光标所在行的文本  
ndd:删除从光标所在行起的n行文本(n自定义),还具有剪切的作用
yy:复制光标所在行的文本  nyy:复制从光标所在行起的n行文本(n自定义)      
u:撤销    
p:粘贴
gg  光标快速移动到首行
shift + gg 光标快速移动到尾行
ngg  光标快速移动到第n行(n自定义)n→   向右移动n个字符(n自定义)    n←  向左移动n个字符(n自定义)/输入关键字,回车开始查找   shift+zz 快速保存并退出4.1 打包和压缩
Windows的压缩文件的扩展名  .zip/.rar
linux中的打包文件:aa.tar      
linux中的压缩文件:bb.gz    
linux中打包并压缩的文件:.tar.gzLinux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。
而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。命令:tar -zcvf 打包压缩后的文件名 要打包的文件
其中:z:调用gzip压缩命令进行压缩c:打包文件v:显示运行过程f:指定文件名示例:打包并压缩/usr/tmp 下的所有文件 压缩后的压缩包指定名称为xxx.tar
tar -zcvf ab.tar aa.txt bb.txt 
或:tar -zcvf ab.tar  *4.2 解压
命令:tar [-zxvf] 压缩文件    
其中:x:代表解压
示例:将/usr/tmp 下的ab.tar解压到当前目录下
示例:将/usr/tmp 下的ab.tar解压到根目录/usr下
tar -xvf ab.tar -C /usr    -C代表指定解压的位置查找名为dict.txt的文件
find / -name dict.py从主目录复制目录
cp -r /tmp/jieba_para_script_test /ddmp/whj/jieba/jieba_para_script_test直接删除目录
rm -rf jieba_script_test

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/364064.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【全球首个开源AI数字人】DUIX数字人-打造你的AI伴侣!

目录 1. 引言1.1 数字人技术的发展背景1.2 DUIX数字人项目的开源意义1.3 DUIX数字人技术的独特价值1.4 本文目的与结构 2. DUIX数字人概述2.1 定义与核心概念2.2 硅基智能与DUIX的关系2.3 技术架构2.4 开源优势2.5 应用场景2.6 安全与合规性 3. DUIX数字人技术特点3.1 开源性与…

学习gateway网关路由时遇到的问题

遇到这个问题先别慌,我们首先要检查是哪里出问题了,从报错信息中我们可以看到,他说 Unable to find GatewayFilterFactory with name -AddRequestHeader 找不到这个路由过滤器,所以导致网关设置失败,从这条信息上我…

我的北航MEM成长之旅

领完毕业证,2年的学业生涯到此结束。为了方便大家理解后续的内容,这里我们先解释下基本信息,比如MEM到底是个啥?以及北航的MEM都学什么? 1 MEM解读 1.1 MEM是什么? MEM是"Master of Engineering Ma…

如何用CSS样式实现一个优雅的渐变效果?

CSS渐变效果 CSS渐变(Gradients)是一种让两种或多种颜色平滑过渡的视觉效果,广泛应用于网页背景、按钮、边框等,以创造丰富的视觉体验。CSS提供了线性渐变(Linear Gradients)和径向渐变(Radial…

用英文介绍美国总统:Barack Obama First African-American President (2009 – 2017)

Barack Obama: First African-American President (2009 – 2017) Link: https://www.youtube.com/watch?vwHCBI3yypmE&listPLybg94GvOJ9E-ZM1U6PAjgPUmz-V4-Yja&index44 Introduction Barack Obama made history as the first African-American elected to the pre…

《mysql篇》--查询(进阶)

目录 将查询结果作为插入数据 聚合查询 聚合函数 count sum group by子句 having 联合查询 笛卡尔积 多表查询 join..on实现多表查询 内连接 外连接 自连接 子查询 合并查询 将查询结果作为插入数据 Insert into 表2 select * from 表1//将表1的查询数据插入…

Python逻辑控制语句 之 判断语句--if、if else 和逻辑运算符结合

逻辑运算符: and or not 1.案例一 需求: 1. 获取⽤户输⼊的⽤户名和密码 2. 判断⽤户名是 admin 并且密码是 123456 时, 在控制台输出: 登录成功! 3. 否则在控制台输出: 登录信息错误! # 需求: # 1. 获取用户输入的用户名和密码 # 2. 判断…

linux的常用系统维护命令

1.ps显示某个时间点的程序运行情况 -a :显示所有用户的进程 -u :显示用户名和启动时间 -x :显示 没有控制终端的进程 -e :显示所有进程,包括没有控制终端的进程 -l :长格式显示 -w :宽…

哈尔滨高校大学智能制造实验室数字孪生可视化系统平台项目的验收

哈尔滨高校大学智能制造实验室数字孪生可视化系统平台项目的验收,标志着这一技术在教育领域的应用取得了新的突破。项目旨在开发一个数字孪生可视化系统平台,用于哈尔滨高校大学智能制造实验室的设备模拟、监测与数据分析。项目的主要目标包括&#xff1…

从我邮毕业啦!!!

引言 时间过的好快,转眼间就要从北邮毕业了,距离上一次月度总结又过去了两个月,故作本次总结。 PS: https://github.com/WeiXiao-Hyy/blog整理了后端开发的知识网络,欢迎Star! 毕业🎓 6月1号完成了自己的…

ETAS工具导入DEXT生成Dcm及Dem模块(二)

文章目录 前言DcmDcmDsdDcmDslDcmDspDcmPageBufferCfgDem报错解决总结前言 之前一篇文章介绍了导入DEXT之后在cfggen之前的更改,cfggen完成之后,就可以生成dcm,dem的配置了,但生成完配置后,如果直接生成BSW代码,会报错。本文介绍在cfggen完成后,生成BSW代码前的修改 Dc…

程序员学长 | 快速学会一个算法模型,LSTM

本文来源公众号“程序员学长”,仅用于学术分享,侵权删,干货满满。 原文链接:快速学会一个算法模型,LSTM 今天,给大家分享一个超强的算法模型,LSTM。 LSTM(Long Short-Term Memory…

【算法专题--栈】栈的压入、弹出序列 -- 高频面试题(图文详解,小白一看就懂!!)

目录 一、前言 二、题目描述 三、解题方法 💧栈模拟法💧-- 双指针 ⭐ 解题思路 ⭐ 案例图解 四、总结与提炼 五、共勉 一、前言 栈的压入、弹出序列 这道题,可以说是--栈专题--,最经典的一道题,也是在…

PD芯片OTG功能的应用 LDR6500

随着科技的飞速发展,智能手机、平板电脑等电子设备已经成为我们日常生活和工作中不可或缺的工具。这些设备的功能日益强大,应用场景也愈发广泛,但随之而来的是对充电和数据传输效率的高要求。在这一背景下,PD(Power De…

使用shell脚本编写监控系统资源(CPU,内存,磁盘)使用情况

🏡作者主页:点击! 🛠️Shell编程专栏:点击! ⏰️创作时间:2024年6月20日16点30分 🀄️文章质量:95分 目录 ————前言———— 1.本章目标 2.编写脚本 1.获取内…

新能源汽车 LabCar 测试系统方案(二)

什么是LabCar测试 LabCar测试目标是进行整车黄板台架功能测试,用于整车开发和测试阶段,满足设计人员和测试人员的试验需求,以验证整车性能,减少开发工作量。系统主要用于测试静态及动态工况下的纯电动汽车的各项功能实现情况。 …

CPN Tools学习——案例实操

基于CPN的空竭服务单重休假 M/G/1 型排队系统建模与分析 目录 1创建CPN模型 1.1函数和变量声明 1.2监控声明 2 创建分层CPN 3 添加monitor 3.1 Predicate谓词函数 3.2 Observer观察函数 3.3 Init function &Stop初始化和停止函数 4CPN Tools工具补充 1创建CPN模…

【ARM】MDK工程切换高版本的编译器后出现error A1137E报错

【更多软件使用问题请点击亿道电子官方网站】 1、 文档目标 解决工程从Compiler 5切换到Compiler 6进行编译时出现一些非语法问题上的报错。 2、 问题场景 对于一些使用Compiler 5进行编译的工程,要切换到Compiler 6进行编译的时候,原本无任何报错警告…

微信商家转账到零钱

1.发起商家转账 发起商家转账接口。商户可以通过该接口同时向多个用户微信零钱进行转账操作。请求消息中应包含商家批次单号、转账名称、appid、转账总金额、转账总笔数、转账openid、收款用户姓名等信息。注意受理成功将返回批次单号,此时并不代表转账成功&#x…

【涵子来信】——社交宝典:克服你心中的内向,世界总有缺陷

内向,你是内向的吗?想必每个人不同,面对的情形也是不同的。 暑假是一个很好的机会,我是可以去多社交社交。但是,面对着CSDN上这么多技术人er,那么,我的宝典,对于大家,有…