摘要: https://movie.douban.com/ 直奔主题,给个要爬取的豆瓣电影地址,爬取热门电影名字。 右键选择查看网页源码,我们可以发现在网页静态源码里,是找不到‘来电狂想’这些关键字的。 通过检查网页,查看network下的XHR,我们可以找到对应的信息。说明我们想要爬取的这部分内容是通过A 阅读全文
posted @ 2019-03-06 21:35 DoubleFishes 阅读(5852) 评论(1) 推荐(2) 编辑
摘要: 1. 爬虫分类: 1.1 通用爬虫:例如搜索引擎:无差别的收集数据;提取存储关键字;构建索引库;给用户提供搜索接口。 1.2 聚焦爬虫:有针对性的编写特定领域数据的爬取程序。 2. Robots协议: 指定一个robots.txt文件,告诉爬虫引擎什么可以爬取,什么不可以爬取。君子协议,不受法律保障 阅读全文
posted @ 2019-03-06 20:02 DoubleFishes 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 因为我自己整理在笔记本上好几次,但是今天看到的时候,又凌乱了。所以还是再次重新整理到博客上。 在计算机的世界里: 1 bytes(字节) == 8 bite(比特);每个bite里存放0或1。 于是一个字节能表示的最大数是:11111111(2) == 255(10);能表示的最小数是:000000 阅读全文
posted @ 2019-03-06 17:54 DoubleFishes 阅读(655) 评论(0) 推荐(0) 编辑
摘要: 先看这个图,了解工作区、版本库、stage、HEAD、master、add、commit这几个概念。 (忘记自己从哪儿盗的图了...) git_relearn文件夹里就是一个工作区(working directory); .git隐藏的文件夹就是版本库(repositary); 版本库里包含暂存区( 阅读全文
posted @ 2019-03-04 20:15 DoubleFishes 阅读(2263) 评论(0) 推荐(0) 编辑
摘要: cpu = 运算器 + 控制器 运算器:完成算术运算、逻辑运算、数据传输等数据加工处理。 控制器:控制程序的执行。 存储器:用于记忆程序和数据。例如:内存。 输入设备:将数据或程序输入到计算机中。例如:鼠标、键盘等。 输出设备:将数据或程序的处理结果展示给用户。例如:显示器、打印机等。 常见文件IO 阅读全文
posted @ 2019-03-04 16:05 DoubleFishes 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 又是从做铺垫开始: *文档字符串(Documentation Strings) 在装饰器调用过程中,我们打印出这些函数属性信息会发现问题: 我们打印出的add()函数的属性并不是add()函数定义时的属性信息,而是wrapper()函数里的属性信息。(因为@logger里将add重新赋值为wrapp 阅读全文
posted @ 2019-03-04 13:08 DoubleFishes 阅读(351) 评论(0) 推荐(0) 编辑
摘要: 按照这个顺序去循序渐进理解装饰器:高阶函数->柯里化->装饰器 在python里,函数可以是对象,可以作为普通变量、参数、返回值等等。 所以高阶函数定义: 1.输入一个或多个函数作为参数; 2.输出一个函数。 例如样式: y = g(f(x)) 闭包就是一个高阶函数: python内置的很多函数都是 阅读全文
posted @ 2019-03-03 08:34 DoubleFishes 阅读(311) 评论(0) 推荐(0) 编辑
摘要: 变量的查找顺序:LEGB 本地作用域、局部作用域的local命名空间。 在函数内(def或lambda)通过使用方式赋值, 且没有通过global声明为全局变量。 python2引入了嵌套函数,实现闭包。 这个就是嵌套函数的外部函数的命名空间。 上层函数的本地作用域。 全局作用域:即一个模块的命名空 阅读全文
posted @ 2019-03-02 22:45 DoubleFishes 阅读(530) 评论(0) 推荐(0) 编辑
摘要: #父对象的修改 #子对象的修改 由上面两个例子可以理解为并总结出: a = b赋值操作:就是将变量a的引用地址拷贝过去,即a的另一个别名;对a或者b的操作是对同一个地址下的元素进行操作,所以返回的结果都是一样的,数值同步。 f = copy.deepcopy()深拷贝:就是将父对象及父对象下的子对象 阅读全文
posted @ 2019-03-01 21:13 DoubleFishes 阅读(197) 评论(0) 推荐(0) 编辑
摘要: *从作用域的概念开始: 全局作用域:整个程序运行环境中都可见。 局部作用:函数、类内部可见。 两者特点: 1.局部变量使用范围不能超过其所在的局部作用域。 2.外层变量作用域在内层作用域可见。在内层作用域定义一个同名的局部变量时,相当于在当前作用域重新定义一个新的变量,但不会覆盖外层作用域的同名变量 阅读全文
posted @ 2019-03-01 20:23 DoubleFishes 阅读(119) 评论(0) 推荐(0) 编辑