自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 python通过伪装头部数据抵抗反爬虫

0x00  环境系统环境:win10编写工具:JetBrains PyCharm Community Edition 2017.1.2 x64python 版本:python-3.6.2抓包工具:Fiddler 40x01 头部数据伪装思路通过http向服务器提交数据,以下是通过Fiddler 抓取python没有伪装的报文头信息GET /u01287072

2017-08-31 17:48:41 6068

原创 C++自定义命名空间编写

记录一下自定义命名空间的写法0x00 代码实现1、定义命名空间namespace ReacherNameSpace{ //int count_value = 10; //extern int count_value = 10; //不能在命名空间内对定义的变量进行赋值操作 extern int count_value; void ShowMsg();}2、

2017-08-29 15:04:43 4584

原创 linux-TCP简单客户端代码

0x00  开头写代码前,一定要先理清楚实现的逻辑,之后查找是否存在实现逻辑的系统函数。以下为整理的逻辑1.创建socket设备文件2.connect连接到指定的服务器3.write发送信息给服务器0x01 代码实现/*******************************************************************

2017-08-29 12:09:16 417

原创 linux-TCP简单服务器代码

0x00  开头写代码前,一定要先理清楚实现的逻辑,之后查找是否存在实现逻辑的系统函数。以下为整理的逻辑1.创建socket设备文件2.bind 绑定设备文件3.listen 开始监听是否有消息进入4.accept 对进入的进行消息进行处理0x01 代码实现 /***********************************************

2017-08-29 11:21:42 389

原创 python代码风格

0x00 为什么要有风格python写代码简直不要太自由,就是太自由所以写出来的代码无序,后来想了一下,干脆把代码写成c风格,毕竟深爱啊。突然发现,效果挺好的,所以将这个风格po出来,如有更好的,请指教。0x01 风格呈现#@Describe 下载图片#@Prameter html 存储html源码#bool getImg(html): #/*这里这样写的好处可以一眼

2017-08-29 10:00:05 264

原创 python图片爬虫

0x00编写思路      爬虫说到底就是模拟人机交互,页面对开发人员来说就是代码(html代码),爬取图片就是下载图片,下载图片对应图片url,有了这个思想和操作步骤,总结成以下步骤:1.获取html页面代码2.提取html页面代码的图片url3.根据图片url下载图片0x01实现代码#coding=utf-8import urllibimport

2017-08-28 11:50:40 337 1

原创 正则表达式-特殊字符

特别字符说明$匹配输入字符串的结尾位置。如果设置了 RegExp对象的 Multiline属性,则 $ 也匹配 '/n' 或 '/r'。要匹配 $字符本身,请使用 /$。( )标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用 /(和 /)。*

2017-08-27 09:47:44 213

原创 python小练习-猜数字

0x00 业务要求随机生成数字,之后输入进行猜数字。0x00 业务中用到的python知识点1.带参函数,有返回值2.随机函数的使用3.if elif 的使用4.if 的使用5.while()语句的使用0x00 代码实现# -*- coding: UTF-8 -*-import random;#猜数字函数def GuessNum(

2017-08-25 23:59:44 1018

原创 linux编译动态库和环境绑定

#编译动态库g++ mysqlfunc.cpp -fPIC -shared -o libmysqlfunc.so#将动态库和主文件合成到一起reacher@ubuntu:~/sqlfunc$ g++ main.cpp -o main.out -I/usr/include/mysql -L. -lmysqlfunc -lmysqlclient#执行程序的时候报错reacher@ubun

2017-08-25 14:36:29 319

原创 使用for循环对列表编译

# -*- coding: UTF-8 -*-#使用for 循环遍历列表def foreach(list): for var in list: print("currnt:"),var;#列表定义arr = ["reacher", "jack", "guazi"];foreach(arr);

2017-08-25 09:44:48 536

原创 mysql数据库连接接口实现

0x00 前期准备操作系统:ubuntu16.0MYSQL *mysql_init(MYSQL *mysql) #include mysql/mysql.h> MYSQL *mysql_real_connect( MYSQL *mysql, const char *host,

2017-08-25 08:49:07 3857 2

原创 python函数定义

0x00 概述记录python带参数 和 不带参数函数定义0x01 代码展现加上 # coding=utf-8 防止on-ASCII character '\xe4' 错误出现# coding=utf-8#不带参数def ShowMsg(): print("hello world!");#带形参的函数def ResultSum(Value_A,

2017-08-24 22:55:49 271

原创 strlen函数编写

0x00 strlen函数原型extern unsigned int strlen(char *s);头文件:string.h格式:strlen (字符数组名)功能:计算给定字符串的(unsigned int型)长度,不包括'\0'在内说明:返回s的长度,不包括结束符NULL。0x01 myStrLen函数1.定义头文件#ifndef

2017-08-24 14:30:01 623

原创 非阻塞超时轮询

0x00  概述一下看libevent超时机制,所以用终端读取模拟一下超时机制0x01  代码展现#define ErrMsg(msg){\ do{\ perror(msg);\ exit(1); \ }while(0);\}int main(int argc, char* argv[]){ char buf[1024];

2017-08-23 11:53:12 479

原创 数据结构解析

数据结构自打刚开始上学到工作都是吹牛、侃大山必备神器。所以一直都要保持总结和提高。0x00 数据结构三大马车数据模型定义,数据模型操作, 数据显示数据模型定义:由单一弱数据类型,变成了由多个弱数据类型组成的强类型typedef struct tag_data{ char name[20]; int Mathematics; int Chinese;}studen

2017-08-22 12:04:42 215

原创 创建竖表节省空间

0x000 创建思想面向对象编程避免冗余代码,所以提出公共代码抽象成父类,个性化子类继承抽象父类达到避免编写多余代码。基于这个编程想法,创建竖表也是可以达到这样效果0x001 如何使用作为竖表作为属性表,主表lefe join 就可以快速索引举个栗子:select * from main_table main left join ( ----添加性

2017-08-21 23:55:02 179

原创 如何有经验的创建mysql数据表

0x000 分析需求需要对给的业务需求进行分析,分析完毕构建文档(瓜子当年刚开始搬砖的时候,特不情愿写文档。离职后才发现,特瞄的,这都是财富啊!!)发送给技术主管和抄送技术经理(新人一定要特别注意,一定要养成习惯对上次回报工作进度,当年不喜欢和反感,没少吃亏上当)0x001 构建数据表create table student_info( student_id

2017-08-21 20:30:05 274

原创 lua函数返回多个值

function CompareString(in_source, in_compare) local ret_value; local ret_msg; if (in_source > in_compare) then value = 1; msg = 'source greate then'; end if (in_source < in_compare) then

2017-08-21 20:19:39 3603

原创 LUA 表结构的使用

0x00 什么是表table 是 Lua 的一种数据结构用来帮助我们创建不同的数据类型,如:数字、字典等。Lua table 使用关联型数组,你可以用任意类型的值来作数组的索引,但这个值不能是 nil。Lua table 是不固定大小的,你可以根据自己需要进行扩容。Lua也是通过table来解决模块(module)、包(package)和对象(Object)的。 0x01 怎么使用构建表l

2017-08-21 20:19:36 372

原创 LUA逻辑运算符OR的使用

function CheckValue(str_value, int_value) local msg; --逻辑运算符的使用 if (int_value < 0) or (str_value == ' ') then msg = 0; else msg = 1; end return msg;endin_str = io.read();in_int = 1;

2017-08-21 20:19:32 841

原创 lua初探

0x00.什么是lua Lua 是一个小巧的脚本语言,底层c编写,可以调用c更高的提升性能 0x01.lua能做什么 Lua的目标是成为一个很容易嵌入其它语言中使用的语言, 0x02.lua的简单案例function Requst(in_value) --局部变量 local msg; --分支判断 if in_value == "hello" then msg = "hi

2017-08-21 20:19:29 174

原创 sed、akw学习指引

0x00 sed、akw是什么   LINUX高效的处理文档字符工具 0x01、学习的四个难点   sed、akw的工作机制   正则表达式的配合使用   如何进行交互操作   语法和编写技巧

2017-08-21 20:19:24 193

原创 LINUX信号量实现对公共数据的读写

0x00.信号量的作用  信号量(Semaphore),有时被称为信号灯,是在多线程环境下使用的一种设施,是可以用来保证两个或多个关键代码段不被并发调用。在进入一个关键代码段之前,线程必须获取一个信号量;一旦该关键代码段完成了,那么该线程必须释放信号量。其它想进入该关键代码段的线程必须等待直到第一个线程释放信号量。为了完成这个过程,需要创建一个信号量VI,然后将Acquire Semaphore

2017-08-21 20:19:19 337

原创 LINUX线程同步初探

0x00.什么是线程同步     同步,又称直接制约关系,是指多个线程(或进程)为了合作完成任务,必须严格按照规定的 某种先后次序来运行0x01.案例代码 1 void* PthreadFunc(void* argc); 2 int flag_num = 1; 3 4 int main(int argc, char* argv[]) 5 { 6 pthread_t pid

2017-08-21 20:19:14 152

原创 TinyXml友员类的复习

0x00. 遇到问题 TiXmlNode 不提供节点属性查询,跟进代码查看有friend class TiXmlElement; 友员类,忘记怎么玩了╮(╯▽╰)╭。 0x01. 将代码抓取出来class TiXmlNode : public TiXmlBase{friend class TiXmlDocument;friend class TiXmlElement;}c

2017-08-21 20:19:11 161

原创 LINUX线程简介和简单代码案例

0x00.什么是线程    是计算机中独立运行的最小单位,运行时占用很少的系统资源。可以把线程看成是操作系统分配CPU时间的基本单元。一个进程可以拥有一个至多个线程。它线程在进程内部共享地址空间、打开的文件描述符等资源。同时线程也有其私有的数据信息,包括:线程号、寄存器(程序计数器和堆栈指针)、堆栈、信号掩码、优先级、线程私有存储空间 0x01.为什么使用线程     在某个时间片需要同时执行

2017-08-21 20:19:06 192

原创 LINUX信号-sigaction更强壮的信号注册函数

测试环境:ubuntu 16.0编译器:       g++ (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609 (查看版本指令:g++ --version)实验目的: 使用更强壮的linux信号注册函数  int sigaction(int signum, const struct sigaction *act,struct sigaction *o

2017-08-21 20:19:01 263

原创 LINUX信号发送

测试环境:ubuntu 16.0编译器:       g++ (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609 (查看版本指令:g++ --version)实验目的: 使用int kill(pid_t pid, int sig); 函数发送信号实验步骤:子进程发送信号,父进程接收子进程发送的信号进行处理 以下为测试代码: 1 #includ

2017-08-21 20:18:56 601

原创 LINUX信号注册和执行

测试环境:ubuntu 16.0编译器:       g++ (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609 (查看版本指令:g++ --version)以下为测试代码: 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 //发现信

2017-08-21 20:18:53 1493

原创 LINUX核心思想

1.一切皆是文件

2017-08-21 20:18:48 1131

原创 main函数形参argc和argv解析

测试环境:ubuntu 16.0编译器:       g++ (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609 (查看版本指令:g++ --version)以下为测试代码: 1 #include 2 #include 3 4 int main(int argc, char* argv[]) 5 { 6 int count

2017-08-21 20:18:45 300

原创 LUA函数可变参数数据获取

function FuncAdd(...)local sum = 0;--遍历...内的数据值进行叠加for key , value in pairs{...}do sum = sum + value;endreturn sum;endprint(FuncAdd(1,2,3,4,5));将{…}可变参数当作lua的table进行遍历处理

2017-08-19 15:39:09 2192

空空如也

空空如也

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

TA关注的人

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