自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

BigBoy_Coder的博客

每天学一点,积累多一点

  • 博客(153)
  • 资源 (3)
  • 收藏
  • 关注

转载 一次mongo查询不存在字段引发的事故

  话说今天的一个小小的查询失误给了我比较深刻的教训,也让我对mongo有了更深刻的理解,下面我们来说说这个事情的原委:我们经常使用阿里云子账号在DMS上查询线上数据库数据,今天也是平常的一次操作集合: 1 XXXX_message<br>数据量约 600万 我执行了下面的mongo查询: 1 db.XXXX_message.find({"channel_id":"1000000009XXXX700XXXX"}.

2021-02-24 16:54:51 535 4

转载 Android 反编译利器,jadx 的高级技巧

一、前言今天介绍一个非常好用的反编译的工具 jadx 。jadx 的功能非常的强大,对我而言,基本上满足日常反编译需求。jadx 优点:图形化的界面。 拖拽式的操作。 反编译输出 Java 代码。 导出 Gradle 工程。这些优点都让 jadx 成为我反编译的第一选择,它可以处理大部分反编译的需求,基本上是我反编译工具的首选。接下来我们就来看看,jadx 如何使用吧。二、使用 jadx2.1 安装 jadxjadx 本身就是一个开源项目,源代码已经在 Github 上开

2021-01-21 15:09:12 940

原创 oneplus6刷机

本篇文章,仅仅讲的是刷机实战和刷机的用处,对刷机的专有名词和原理不做解释,(网站文章教程很多,后期也会整合一篇笔记出来)<!--more-->手机刷机有什么好处?   1)手机root,刷机后的大多数ROM可以自动ROOT,获得最高的管理权限,可以使用更好玩,更丰富的手机软件。  2)优化手机系统性能,由于可定制的ROM(即刷机ROM)对内存进行了优化处理,删除了一些不常用的软件,以及针对特定人群进行定制优化,因此在性能上更加卓越。  3)解决手机运...

2021-01-14 15:56:44 764

转载 初识网络请求库 Httpx

简介HTTPX 是最近 GitHub看的到一个比较火的一个项目,根据官网的描述,总结有如下特点: 和使用 requests 一样方便,requests 有的它都有 加入 HTTP/1.1 和 HTTP/2 的支持。 能够直接向 WSGI 应用程序或 ASGI 应用程序发出请求。 到处都有严格的超时设置 全类型注释 100% 的测试覆盖率 比较不错的一个特点是全类型注解,这让我想起了一个叫Starlette的库,它也是全类型注解的,类型注解主..

2020-12-14 18:45:28 403 1

转载 python requests爬虫如何print http raw请求?

1、前言  hello,各位码友,最近冷空气有点飕飕的,可得注意防寒,穿秋裤出来暖场,千万别取暖靠抖了。前面几篇咱们一直在selenium系列,咱们今天讨论一点其他的。  进入正题。大家一般都使用python的requests库进行爬虫开发,在很多情况下,我们代码写好了,运行起来总是得不到想要的结果,要么是headers字典里面少加了点特定的键值,要么是忘了带cookie,还有就干脆发送的数据body或者query string有问题。2、问题  我们的问题在于如何记录原始的http请求,以

2020-12-09 20:29:19 786

转载 写代码有这16个好习惯,可以减少80%非业务的bug

每一个好习惯都是一笔财富,本文整理了写代码的16个好习惯,每个都很经典,养成这些习惯,可以规避多数非业务的bug!希望对大家有帮助哈,谢谢阅读,加油哦~github地址,感谢每颗star❝https://github.com/whx123/JavaHome❞公众号:「捡田螺的小男孩」1. 修改完代码,记得自测一下「改完代码,自测一下」是每位程序员必备的基本素养。尤其不要抱有这种侥幸「心理:我只是改了一个变量或者我只改了一行配置代码,不用自测了」。改完代码,尽量要求自己都去测试一下哈.

2020-12-01 17:12:28 111

原创 python之位运算

位运算,计算机内所有的数都以二进制存储,位运算就是对二进制位的操作位运算符 说明 << 按位左移,左移n位相当于乘以2的n次方 >> 按位右移 ,左移n位相当于除以2的n次方 & 按位与,二进制位数同且为1结果位为1 l 按位或 ,二进制位数或有1结果位为1 ^ 按位异或 ,二进制位数不同结果位为1 ~ 按位取反,二进制位0和1结果位互换 按位左移例子a=11b=a<<3

2020-12-01 11:32:32 248

转载 python 实现二叉树的深度&&广度优先遍历

概述前言 什么是树 什么是二叉树 深度优先 广度优先 后记前言前面说到算法被虐了,这回我要好好把它啃下来。哪里跌倒就要从哪里站起来。这是我复习算法与数据结构时的小笔记,这里就 po 出来,给大家也复习一下旧的知识点,查缺补漏。如果我的文章对你有帮助,欢迎关注、点赞、转发,这样我会更有动力做原创分享。什么是树在计算器科学中,树(英语:tree)是一种抽象数据类型(ADT)或是实现这种抽象数据类型的数据结构,用来模拟具有树状结构性质的数据集合。它是由n(n...

2020-12-01 09:58:12 173

原创 初识Protobuf协议

本文作为Protobuf入门学习的第一篇文章,将简单介绍Protobuf协议以及如何使用Protobuf来实现序列化与反序列化。原文地址:https://mp.weixin.qq.com/s/QbLq5gVKjaHyoaY2Vv5MRQProtobuf简介protobuf  Protobuf即Protocol Buffers,是Google公司开发的一种跨语言和平台的序列化数据结构的方式,是一个灵活的、高效的用于序列化数据的协议。  与XML和JSON格式相比,Protobuf更小、

2020-11-28 16:33:25 445

原创 AttributeError: module ‘google.protobuf.descriptor‘ has no attribute ‘_internal_create_key‘

使用protobuf报错如下:AttributeError: module 'google.protobuf.descriptor' has no attribute '_internal_create_key'AttributeError: module 'google.protobuf.descriptor' has no attribute '_internal_create_key'解决方案:1. 查看protoc的版本,在命令行输入如下代码:protoc --vers.

2020-11-28 16:05:08 3210 3

原创 初识 Asyncio 教程

原文:https://segmentfault.com/a/1190000008814676所谓「异步 IO」,就是你发起一个 IO 操作,却不用等它结束,你可以继续做其他事情,当它结束时,你会得到通知。Asyncio 是并发(concurrency)的一种方式。对 Python 来说,并发还可以通过线程(threading)和多进程(multiprocessing)来实现。Asyncio 并不能带来真正的并行(parallelism)。当然,因为 GIL(全局解释器锁)的存在,Python 的

2020-11-28 12:55:36 177

转载 Motor使用教程

Motor使用教程Motor提供了一个基于协程的API,用于对MongoDB的非阻塞访问。译者:桑葚ICE安装python3 -m pip install motor复制代码创建客户端指定主机和端口号import motor.motor_asyncioclient = motor.motor_asyncio.AsyncIOMotorClient('localhost', 27017)复制代码使用用户名和密码motor.motor_asyncio.Async

2020-11-27 18:48:19 3258

原创 Redis 高级特性 Pipeline (管道) 使用和基本测试

都说Pipeline有很大好处,但是能量是守恒的,好坏也是相对的。 所以我们主要来测试看看Pipeline的利弊。 带着几个问题我们来进行基本的测试。 1.Pipeline对命令数量是否有限制? 2.Pipeline打包执行多少命令合适? 3.Pipeline批量执行的时候,是否对Redis进行了锁定,导致其他应用无法再进行读写?Redis 常规使用方式我们都知道Redis 是单线程的,那么在常规使用情况下,我们使用 Redis ,如下代码执行是什么流程呢?$ke...

2020-11-27 14:25:15 1151

转载 Notifications 通知

Notifications 通知通知是指 Android 在应用的界面之外显示的消息,旨在向用户提供提醒、来自他人的通信信息或应用中的其他实时信息。用户可以点按通知来打开应用,也可以直接在通知中执行某项操作。通知显示通知可以在不同的位置以不同的格式显示,例如,状态栏中的图标、抽屉式通知栏中比较详细的条目、应用图标上的标志,以及在配对的穿戴式设备上自动显示。状态栏和抽屉式通知栏发出通知后,通知先以图标的形式显示在状态栏中。用户可以在状态栏向下滑动以打开抽屉式通知栏,并在其中查看更

2020-11-26 16:54:24 855

转载 使用adb shell dumpsys检测Android的Activity任务栈

谈起Android程序开发,就需要了解其四个主要的部件:Activity、Service、ContentProvider、BroadcastReceiver。而其中Activity是唯一直接控制程序界面呈现,直面用户操作的部件(当然BrowadCastReceiver也能通过桌面控件(App Widgets)来呈现有限的操作界面)。Android对于Activity有严格的生命周期控制,以限制开发者在适当的回调函数里的放上合适的代码。对于多个Activity的转换,Android也有非常好的管理和流畅的切.

2020-11-26 16:18:40 1183

转载 mac 更新“.bash_profile”(配置全局环境变量)没生效问题

打开终端cd /Users/用户名是否存在.bash_profileopen .bash_profile不存在即创建touch .bash_profile打开编辑后,让.bash_profile配置的全局变量理解生效source ~/.bash_profile可能不起作用,原因是 mac下采用zsh代替bash,而zsh加载的是 ~/.zshrc文件,而 ‘.zshrc’ 文件中并没有定义任务环境变量。解决办法在~/.zshrc文件最后...

2020-11-26 13:20:41 1134

原创 jadx 意外退出 可能原因

最近使用jadx来反编译app,但是总是弹出下图的错误,我的是mac环境解决方法:最后找到是说jdk版本问题,我出问题的版本是jdk1.8最新的250版本,后来改成jdk1.8 211版本就很稳定了, jadx的版本是此时最新的1.1...

2020-11-26 12:54:33 804

转载 Android基础——Android系统概览

1. Android系统架构 android大致可以分为四层架构:Linux内核层,系统运行库层、应用框架层和应用层 Linux内核层 android系统是基于Linux内核,这一层为android设备的各种硬件提供了底层驱动。 系统运行库层 通过一些C/C++库来为android提供了主要的特性支持。还有android运行时库,主要提供一些库,允许开发者使用Java语言来编写android应用。 应用结构层 提供了构建应用程序时可能用到的各

2020-11-26 10:22:22 783

转载 Android基础-Activity基本使用

1. Activity概念Activity,即活动,是一种可以包含用户界面的组件,主要用于和用户进行交互活动提供应用程序绘制其UI的窗口。此窗口通常填充屏幕,但可能小于屏幕并浮动在其他窗口的顶部。通常,一个活动在应用程序中实现一个屏幕。多数应用包含多个屏幕,即多个活动,一般会指定一个活动为主要活动,即用户启动程序显示的第一个屏幕。2. Activity基本用法2.1 注册声明所有的活动都要在AndroidManifest.xml中进行注册才能生效活动的注册声明要放在<appli

2020-11-24 17:43:20 537

转载 Android基础——PendingIntent理解

1. PendingIntent认识PendIntent其实是Intent的封装,这就带来了几个问题:为什么要有PendingIntent?与Intent有什么区别? PendingIntent的应用场景主要有哪些? 它的内部是如何实现的?1.1 与Intent的区别 Intent是意图的意思。Android 中的 Intent 正是取自这个意思,它是一个消息对象,通过它,Android 系统的四大组件能够方便的通信,并且保证解耦。 Intent 可以说明某种意图,携带一种行为和相.

2020-11-24 16:12:57 678

转载 python代码重构优化的一些方法

【导语】:对自己写的冗长代码,想重构但又无思路?小编整理了介绍python代码重构优化的一些方法,助你一臂之力。编写干净的 Pythonic 代码就是尽可能使其易于理解,但又简洁。所以重构代码让代码简洁易理解是很有必要的。本文重点是想跟大家探讨为什么这些重构是好想法,而不仅仅是如何做。1. 合并嵌套的 if 条件太多的嵌套会使代码难以理解,这在 Python 中尤为如此,因为 Python 没有括号来帮助区隔不同的嵌套级别。阅读深度嵌套的代码容易让人烦...

2020-11-18 12:06:28 264 1

转载 你每天都在使用的HTTP协议,到底是什么鬼?

了解HTTPHTTP是什么呢?它是超文本传输协议,HTTP是缩写,它的全英文名是HyperText Transfer Protocol。那么什么是超文本呢?超文本指的是HTML,css,JavaScript和图片等,HTTP的出现是为了接收和发布HTML页面,经过不断的发展也可以用于接收一些音频,视频,文件等内容。HTTP协议是用于客户端和服务器端之间的通信,用于客户端和服务器端之间的通信有HTTP协议和TCP/IP协议族在内的其他众多的协议。请求访问文本或...

2020-11-17 17:57:30 169

转载 初识SafetyNet简要梳理

目录前序2什么是SafetyNet校验?2Safetynet工作原理2监控及校验内容2实现方式3参考文献:4前序由于近年来Android支付应用的兴起,一些人在root过的手机上发现该类支付性质的应用无法使用。原来,google针对app的安全性推出了Safetynet验证服务。该服务可以为Android设备的app运行安全提供一个相对比较高的标准。什么是SafetyNet校验?说白了,她就是一个google...

2020-11-12 17:11:48 1699

转载 Mac 安装 Android Studio 以及 Android 开发环境配置

Mac 安装 Android Studio 以及 Android 开发环境配置安装 Android Studio1. 下载 Android Studio下载地址:https://developer.android.google.cn/studio/直接下载最新的dmg文件,安装,一直点 Next 下一步直到完成。2. Proxy 设置打开新安装的 Android Studio 点击Android Studio 选择Preferences 选择HTTP Proxy 选择...

2020-10-31 10:45:31 1032

转载 linux 安裝mitmproxy

1.安装mitmproxy下载mitmproxy二进制安装包:https://github.com/mitmproxy/mitmproxy/releases/我下载的版本为mitmproxy-4.0.1-linux.tar.gz下载之后需要解压然后将其配置到环境变量。tar -zxvf mitmproxy-4.0.1-linux.tar.gzsudo mv mitmproxy mitmdump mitmweb /usr/bin2. 证书配置对于 MitmProxy 来说,如果想要截

2020-08-27 17:00:01 261

转载 Redis命令时间复杂度查询表

String类型命令 时间复杂度 set 0(1) get 0(1) del 0(k),k是键的个数 mset 0(k),k是键的个数 mget 0(k),k是键的个数 incr 0(1) decr 0(1) incryby 0(1) decryby 0(1) incrybyfloat 0(1) append 0(1) strlen 0(1) setrange 0(n)

2020-08-14 18:35:43 718

转载 配置squid做二级代理,支持访问http和https

公司A电脑可以通过代理上网,B电脑无法连接代理服务器,但可以连接到A,因此考虑使用squid在A电脑上搭建二级代理,以达到B电脑可以访问internet的目的。以下引自squid-cache wiki:http://wiki.squid-cache.org/Features/CacheHierarchy?highlight=%28%5CbCategoryFeature%5Cb%29%7C%28faqlisted.yes%29How do I configure Squid forward all r

2020-08-07 10:40:02 1487

转载 解决yum报错error: %pre(xxxxx.el7_3.1.x86_64) scriptlet failed, exit status 1

解决yum报错error: %pre(xxxxx.el7_3.1.x86_64) scriptlet failed, exit status 1今天安装软件也就是squid遇到了报错本想着yum安装完事,但是却遇到报错error: %pre(squid-7:3.5.20-2.el7_3.1.x86_64) scriptlet failed, exit status 1解决方法:1.首先把rpm包下载下来yum install squid --downloadonly ..

2020-08-06 20:13:00 3024

转载 Python 直接赋值、浅拷贝和深度拷贝解析

Python 直接赋值、浅拷贝和深度拷贝解析分类编程技术 直接赋值:其实就是对象的引用(别名)。 浅拷贝(copy):拷贝父对象,不会拷贝对象的内部的子对象。 深拷贝(deepcopy):copy 模块的 deepcopy 方法,完全拷贝了父对象及其子对象。 字典浅拷贝实例实例>>>a = {1: [1,2,3]} >>> b = a.copy() >>> a, b ({1: [1, 2, 3]}, {1: ..

2020-08-01 18:12:55 110

转载 squid 启用https反向代理代理

启用https代理,顾名思义就是在访问squid代理的时候使用https.环境centos7第一步:安装squid和相关依赖[root@openstack ~]# yum install -y gcc openssl openssl-devel #依赖软件要先提前安装[root@openstack ~]# yum install squid[root@openstack ~]# cd /etc/squid/[root@openstack squid]# cp squid.conf squid

2020-07-31 17:23:21 1269

原创 python统计电脑内存,cpu,磁盘使用情况

import psutil # pip install psutil# 获取本机磁盘使用率和剩余空间G信息def get_disk_info(): # 循环磁盘分区 content = "" for disk in psutil.disk_partitions(): # 读写方式 光盘 or 有效磁盘类型 if 'cdrom' in disk.opts or disk.fstype == '': continue .

2020-07-24 11:18:50 1123

转载 python模块之psutil详解

python模块之psutil详解目录python模块之psutil详解 简介 功能函数 CPU相关: Memory内存相关: Disk相关: Network相关: 进程管理 简介psutil是一个开源切跨平台的库,其提供了便利的函数用来获取才做系统的信息,比如CPU,内存,磁盘,网络等。此外,psutil还可以用来进行进程管理,包括判断进程是否存在、获取进程列表、获取进程详细信息等。而且psutil还提供了许多命令行工具提供的功能,包括:ps,...

2020-07-24 11:12:27 605

转载 Mac中安全地使用rm命令

关键词rm: 删除命令, 文件一旦通过rm命令删除, 则无法恢复, 所以必须格外小心地使用该命令. trash: OSX下的小型命令行程序, 用于将文件或文件夹移动到废纸篓.前言终端操作中经常会使用到rm甚至rm -rf命令删除一些文件, 这种方式删除的文件不会出现在废纸篓中, 若出现误删的情况, 找回文件是个麻烦事. 所以需要改变rm命令, 让它将文件移入废纸篓.终端中如何将文件移入回收站trash is a small command-line program for OS X t

2020-07-23 17:56:35 922

转载 Flask 的 jsonify 和 普通的json有什么不同

聊一聊 Flask 的 jsonify首先我们来看一段 Python 代码from flask import Flask, jsonifyapp = Flask(__name__)tasks = [ { 'id': 1, 'title': u'订阅 python_mastery 专栏', 'description': u'专栏Link: https://xiaozhuanlan.com/python_mastery' }.

2020-07-23 14:20:42 231

原创 conteos7 拨号代理配合squid安装使用

安装 squid# rpm -qa | grep squidsquid-3.3.8-26.el7_2.4.x86_64 // 表示安装过yum -y install squid // 安装开机自启动 squidsystemctl enable squid.service 配置 squidvi /etc/squid/squid.conf**修改如下几个部分**http_access allow !Safe_ports#deny.

2020-07-17 16:39:53 244

原创 centos安装python3的操作流程

#!/usr/bin/env bash#centos 安装python3的操作#https://www.cnblogs.com/ilovepython/p/11068845.htmlyum -y install wget zlib zlib-devel openssl-devel gcc makewget -P /usr/local/src/ https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgztar -xzvf /usr/loc.

2020-07-16 19:23:59 117

原创 优雅的爬虫,睡眠插件

原理讲解截图:代码实现:from urllib import parsefrom datetime import datetimeimport timeimport requestsfrom loguru import loggerclass DelayWait(object): def __init__(self, delay=3): """ 初始化定义睡眠时间,请求相同一个网站的url,睡眠为3秒 :param delay

2020-07-15 23:27:05 291

原创 算法,业务场景一:矩阵处理

1、有四行数据分别是:1、4、52、3、43、51、52、有12列数据分别是:123451、41、52、32、43、43、54、53、待实现逻辑:判断每列的数据,是不是都在每一行的数据里,如果是 结果为1 else 0结果返回一个4行12列的数组​eg:列数1:1 被包含在 行数1里 结果为 1列数7:1 、4 不被包含在 行数1里 结果为 0​4、代码逻辑4.1将每一行数据的每个数值放到一个列表里,整体再追...

2020-07-15 23:05:58 293

原创 如何测试设置请求代理是否生效

当自已使用代理抓取网站时,怎么才能知道自己的代理,设置成功了1、代理测试目标网站:http://www.httpbin.org/ip https://ip.sb2、代码测试import requests​headers = { "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.410...

2020-07-15 17:19:36 2870

转载 Mac系统安装JDK1.8及环境变量配置

Mac系统安装JDK1.8及环境变量配置概述这篇文章主要为在MAC苹果系统下安装JDK1.8并配置系统环境变量。主要分为以下步骤:到Oracle官网下载JDK1.8安装包。 打开获取到的安装包按步骤安装到系统上。 配置系统的环境变量。 验证JDK1.8是否安装成功。到Oracle官网下载JDK1.8安装包官网下载链接,找到以下图:官网sdk下载.png选择接受证书协议,然后选择对应的Mac OS X一栏下载SDK,这里我说下,下载sdk必须要登录才可以下载,.

2020-07-13 15:55:47 2024

AndroidKiller.zip

大家使用的Android反编译的软件是Android Killer

2019-05-16

Android逆向助手_v2.2.zip

一个特别牛的工具全自动的。(Android逆行助手.exe),

2019-05-15

mongo可视化工具

链接mongodb数据库可视化工具,2,链接mongodb数据库 双击robo3t.exe

2018-08-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除