【Pyton】【小甲鱼】爬虫4-XXOO】的更多相关文章

一.类 定义一个类,例子如下: class Turtle: #定义一个名为Turtle的类,Python中类型约定以大写字母开头 #属性 color='green' weight=10 legs=4 shell=True mouth='大嘴' #方法 def climb(self): print('我正在很努力的向前爬……') def run(self): print('我正在飞快的向前跑……') def bite(self): print('咬死你咬死你!') def eat(self): p…
Exception 1.assertionerror举例 >>> my_list=['小甲鱼是帅哥'] >>> assert len(my_list)>0 >>> my_list.pop() '小甲鱼是帅哥' >>> assert len(my_list)>0 Traceback (most recent call last): File "<pyshell#6>", line 1, in…
pickle(泡菜): picking:将对象转换为二进制 unpicking:将二进制转换为对象 1 >>> import pickle 2 #picking:对象导入到文件中(二进制形式) 3 >>> my_list=[123,3.14,'小甲鱼',['another list']] #定义一个待对象二进制互转列表 4 >>> pickle_file=open('my_list.pkl','wb') #打开文件,pkl随便起后缀名(起名随意英文即可…
1.打开文件的集中模式: 2.文件对象方法: 对于文件对象方法的练习代码: 读取F:\\script\\script.txt位置文件中内容 >>> f=open('F:\\script\\script.txt','rt') #打开文件位置 >>> f #查看f相关内容 <_io.TextIOWrapper name='F:\\script\\script.txt' mode='rt' encoding='cp936'> >>> f.read…
000-愉快的开始 入门容易,学习难,代码量少. 跨平台: Windows, Mac OS, Linux, UNIX. 应用领域: 操作系统 WEB 3D动画 企业应用 云计算等等. 001-我和Python的第一次亲密接触 1.安装 IDLE 是一个Python Shell:一个通过键入文本与程序交互的途径. 3.print('text'), print(5+3), print(123+456), print('test' +'text' ), print('test' * 8), print…
[小甲鱼零基础入门学习python--课后作业] 小甲鱼零基础入门学习python--课后作业 本章内容: 1.基础部分的作业 2.函数部分的作业 3.字典.集合.文件部分作业 4.异常 5.EasyGui 6.类.对象.魔法方法 7.模块 8.爬虫 本文的目的:做好作业,加强python的应用:同时通过作业来加强python的复习和记忆.所有的作业都从这个入口进入 1.基础部分的作业 [课后作业] 第001讲:我和Python的第一次亲密接触 | 课后测试题及答案 [课后作业] 第002讲:用…
咱接着往下讲解IMAGE_OPTIONAL_HEADER32 结构定义即各个属性的作用! (视频教程:http://fishc.com/a/shipin/jiemixilie/) 接着我们来谈谈 IMAGE_OPTIONAL_HEADER 结构,正如名字的意思,这是一个可选映像头,是一个可选的结构,但是呢,实际上上节课我们讲解的 IMAGE_FILE_HEADER 结构远远不足以来定义 PE 文件的属性.因此,这些属性在 IMAGE_OPTIONAL_HEADER 结构中进行定义. 因此这两个结…
PE Header 是PE相关结构NT映像头(IMAGE_NT_HEADER)的简称,里边包含着许多PE装载器用到的重要字段.下边小甲鱼将为大家详细讲解哈~ (视频教程:http://fishc.com/a/shipin/jiemixilie/) 首先是IMAGE_NT_HEADERS 结构的定义:(啥?结构不会,先看看小甲鱼童鞋的<零基础入门学习C语言>关于结构方面的章节吧~) IMAGE_NT_HEADERS STRUCT {  +0hDWORDSignature  // +4h  IMA…
1.列表里可以存放什么东西? 可以存放任何的数据类型, list1 = ['我爱你','i love you',1314] print(list1) 2.向列表中添加元素 append(将参数作为一个元素添加到列表的结尾) list1 = ['我爱你','i love you',1314] print(list1) list1.append(['forever','just you']) print(list1) extend  (将参数作为一个列表添加到列表的结尾) list1 = [']pr…
1.for循环的使用,注意下面代码的区别 for i in range(0,10,2): print("i love you") for i in range(0,10): print("i love you") for i in range(5): print("i love you") 2.break与continue的区别 for i in range(5): if i == 2: break print(i) for i in range…
测试题: 0. __name__属性指的是在调用该模块的时候调用的函数名称,方便在模块的被调用的时候,模块内部被调用的函数不会被运行. 1. 当模块作为主程序运行的时候,__name__属性的值是“__main__”,当该模块被调用导入到另一个模块的时候,"__name__"属性值为模块名称. 2. 通过sys模块的path变量显示搜索路径: import sys sys.path 3. 将相关模块文件的路径加入到搜索路径中,例如: import sys sys.path.append…
今天有一个朋友发短消息问我说“老师,为什么PE的格式要讲的这么这么细,这可不是一般的系哦”.其实之所以将PE结构放在解密系列继基础篇之后讲并且尽可能细致的讲,不是因为小甲鱼没事找事做,主要原因是因为PE结构非常重要,再说做这个课件的确是很费神的事哈.在这里再次强调一下,只要是windows操作程序,其就要遵循PE格式,再说人家看雪的网址就是www.pediy.com. 简单的讲是可以,但是怕就怕有些朋友知识点遗漏了或者错误理解意思.不能深刻体会等,这样的效果是不好的~所以,小甲鱼尽管这系列视频可…
小甲鱼PE详解之输出表(导出表)详解(PE详解09) 当PE 文件被执行的时候,Windows 加载器将文件装入内存并将导入表(Export Table) 登记的动态链接库(一般是DLL 格式)文件一并装入地址空间,再根据DLL 文件中的函数导出信息对被执行文件的IAT 进行修正. ( 基础补充:很多朋友可能看到这里会有点懵,各位看官请允许小甲鱼啰嗦一下,照顾初学者.我们都明白Windows 在加载一个程序后就在内存中为该程序开辟一个单独的虚拟地址空间,这样的话在各个程序自己看来,自己就拥有几乎…
在此之前,我们已经对这个输入表进行了一些实践和理解,这有助于大家对这个概念更进一步的加深认识.小甲鱼觉得,越是复杂的问题我们应该越是去动手操作它,认识它,这样才容易熟悉它! 在上一节课我们像小鹿一样的乱撞,终于撞到了输入表里边包含的函数名称,嘿嘿,不过地址,我们还是没能找着……这节课我们将深入来剖析输入表的结构,通过结合实例分析来帮助大家理解输入表的工作原理. 输入表结构 回顾一下,在 PE文件头的 IMAGE_OPTIONAL_HEADER 结构中的 DataDirectory(数据目录表)…
捷径并不是把弯路改直了,而是帮你把岔道堵上! 走得弯路跟成长的速度是成正比的!不要害怕走上弯路,弯路会让你懂得更多,最终还是会在终点交汇! 岔路会将你引入万劫不复的深渊,并越走越深…… 在开始讲解输入表(导入表)概念之前,请允许小甲鱼童鞋用简短的几句话来总结之前我们学过的内容,并做进一步的思想综合提升,注意咯! 首先,我们知道PE 文件中的数据被载入内存后根据不同页面属性被划分成很多区块(节),并有区块表(节表)的数据来描述这些区块.这里我们需要注意的问题是:一个区块中的数据仅仅只是由于属性相同…
各种区块的描述: 很多朋友喜欢听小甲鱼的PE详解,因为他们觉得课堂上老师讲解的都是略略带过,绕得大家云里雾里~刚好小甲鱼文采也没课堂上的教授讲的那么好,只能以比较通俗的话语来给大家描述~ 通常,区块中的数据在逻辑上是关联的.PE 文件一般至少都会有两个区块:一个是代码块,另一个是数据块.每一个区块都需要有一个截然不同的名字,这个名字主要是用来表达区块的用途.例如有一个区块叫.rdata,表明他是一个只读区块.注意:区块在映像中是按起始地址(RVA)来排列的,而不是按字母表顺序. 另外,使用区块名…
这一讲我们结合实例来谈谈区块表的定义以及各个属性的含义. 首先,我们先用之前学过的一点知识在二进制文件中手动翻找区块表,这样做的好处是可以使你很快的对PE结构牢记于心.学来的东西就是能用的东西,不能用的理论是空谈,是瞎扯. (具体过程演示大伙可参考小甲鱼的视频教程:<解密系列>系统篇.第五讲) 这里我们经过千辛万苦终于找到了我们的区块表了(当然将来我会教大家写一个自己的工具,让工具去找,现在让大家自己动手是为了增强感觉!),现在我们联系上一章节提到的区块表的结构对各个成员进行详细的分析: ty…
到此为止,小甲鱼和大家已经学了许多关于 DOS header 和 PE header 的知识.接下来就该轮到SectionTable (区块表,也成节表).(视频教程:http://fishc.com/a/shipin/jiemixilie/) 越学越多的结构,大家可能觉得PE挺乱挺杂的哈,所以这里插播下一下必要知识的详细注释,大伙可以按需要看. PE文件到内存的映射 在执行一个PE文件的时候,windows 并不在一开始就将整个文件读入内存的,二十采用与内存映射文件类似的机制.也就是说,win…
前文链接:狗屁不通的“视频专辑:零基础学习C语言(小甲鱼版)”(1) 小甲鱼在很多情况下是跟着谭浩强鹦鹉学舌,所以谭浩强书中的很多错误他又重复了一次.这样,加上他自己的错误,错谬之处难以胜数. 由于拙著<品悟C>已经全面揭露了谭浩强书中的种种错谬,因此,下面视频中凡是谭浩强原来就有的错误,就只标出不细解了.重点讲小甲鱼自己创造的“亮点”.各位网友如对只标出而未解释的地方有疑问,可在评论中提出,我再详细解释. 下面截图来自“视频专辑:零基础学习C语言(小甲鱼版)”第二集.从这一集我们可以清楚地看…
  >>>teacher = 3 >>>teacher  3 #在定义了一个变量后可以之间输入整个变量即可访问这个变量.   >>> teacher = '小甲鱼' >>> print(teacher) 小甲鱼 #由此我们可以看出,Python对变量的定义极为灵活,几乎没有变量这一固定死的概念.     >>> first = 3 >>> second = 9 >>> third…
–Code——————————————————————- print("----------第一个小游戏----------") temp = input("猜一下我现在心里在想那个数字") guess = int(temp) if guess == 8: print("我草,你是我肚子里的蛔虫么?") print("Fuck,你猜中了也没有奖励") else: print("猜错了,是8.") print…
for语句语法: for 目标 in 表达式: 循环体 例子1: favourite = 'Idmask' for i in favourite: print(i, end= ' ') 上面的输出结果为 I d m a s k 例子2: member = ['小甲鱼' ,'黑特' , '迷途' ,'小布丁'] for each in member: print(each, len(each)) 结果为: 小甲鱼 3 黑特 2 迷途 2 小布丁 3 range()函数          此函数为B…
1.下载并安装Python 3.5.0 Python是一个跨平台语言,Python从3.0的版本的语法很多不兼容2版本,官网找到最新的版本并下载:http://www.python.org 2.IDLE使用与print 安装完成Python后,在安装程序中找到IDLE打开即可. IDLE是一个Python Shell,也就是说是一个通过键入文本与程序交互的途径. >>>是提示符 在Python的语法中: # 开始的是注释  不用分号表示语句的结束 例: 打印输出 I love Pytho…
任务:将文件(record.txt)中的数据进行分割,并安装以下规则保存起来.  1.小甲鱼的对话单独保存为boy_*.txt的文件(去掉"小甲鱼:")  2.小客服的对话单独保存为girl_*.txt的文件(去掉"小客服:")  3.文件中总共有三段对话,分别保存为boy_1.txt.boy_2.txt.boy_3.txt.gilr_1.txt.gilr_2.txt.gilr_3.txt      共6个文件.(提示:不同的对话已经使用"====&quo…
笔记: 斐波那契数列的两种实现方式:   迭代的方式: 自己写的: def fab(n): n1 =1 n2 =1 n3 =1 if n < 1: return -1 if n ==1: return 1 if n == 2: return 1 while (n-2)>=0: #这里总写for循环 n3 = n1 +n2 #n1 和 n2的顺序总写反 n1 = n2 n2 = n3 n -=1 return n3result =fab(20)if result != -1: print('总共…
测试题: 0.  递归在编程上的形式是如何表现的呢? 在编程上,递归表现为函数调用本身这么一个行为. 1.  递归必须满足哪两个基本条件? 一.        函数调用自身二.        设置了正确的返回条件 2.  思考一下,按照递归的特性,在编程中有没有不得不使用递归的情况? 例如汉诺塔,目录索引(因为你永远不知道这个目录里边是否还有目录),快速排序(二十世纪十大算法之一),树结构的定义等如事半功倍,否则会导致程序无法实现或相当难以理解. 3.  用递归去计算阶乘问题或斐波那契数列是很糟…
笔记: 1.函数与过程:过程(procedure)是简单的,特殊且没有返回值的:函数(Function)有返回值 Python严格来说只有函数没有过程 2.局部变量:在局部生效如在函数中定义的变量 3.全局变量:作用于整个模块 函数内若试图修改全局变量,Python会新建一个同名局部变量用于存储修改值,原全局变量的值不变   测试题: 0. 下边程序会输入什么? def next(): print('我在next()函数里...') pre() def pre(): print('我在pre()…
笔记: 1.分清楚形参和实参 2.函数文档:是函数的一部分,于解释不同,使用help(函数名)或者 函数名__doc__可以查看到 3.关键字参数(在一个函数的参数较多的时候作用比较明显): 给参数的名字下定义,例如: def F(name,words) 如下两种引用的方法是等价的 F(A,B) = F(words=B,name=A) 4.默认参数:函数定义时为形参赋初值,函数调用时若没有传递参数,则自动使用初值 def F(name=C,words=D) 5.收集参数: def test(*p…
0.递归在编程上的形式是如何表现的呢? 答:在编程上,递归表现为函数调用本身这么一个行为. 1.递归必须满足哪两个基本条件? 答:1函数调用自己. 2有正确的返回条件 2.思考一下,按照递归的特性,在编程中有没有不得不使用递归的情况? 答:不知道呢,应该就是小甲鱼课上说的那个三角形 3.用递归去计算阶乘问题或奜波那契数列是很糟糕的算法,你知道为什么吗? 答:效率太低,每次都需要调用自己,占用空间. 4.请聊一聊递归的优缺点.(想怎么写就怎么写按自己理解的来) 答:优点,代码简洁 缺点 ,效率低占…
百度了半天小甲鱼python飞机大战的源码和素材,搜出一堆不知道是什么玩意儿的玩意儿. 最终还是自己对着视频一行行代码敲出来. 需要的同学点下面的链接自取. 下载…