前情提要:Python爬虫初体验(1):利用requests和bs4提取网站漫画前几天有些放松懈怠,并没有做多少事情……这几天要加油了!7月的计划要抓紧时间完成!今天疯狂肝这个程序,算是暑假睡得最晚的一天了……(不过程序仍然有问题)好的废话不多说,进入正题总结了下上次的爬虫体验。虽然能保证稳定下载,但是下载50张XKCD漫画花费的时间达到了将近10分钟,效率比较低。所以这次学习了多线程,以求达到较快下载完全部2000余张漫画的目标。(另外配合V姓网络加速工
系统 2019-09-27 17:55:07 2521
·迭代器什么是迭代器:迭代器可以让我们访问集合的时候变得非常方便。之前我们通过for…in…来访问一个集合的时候,就是使用迭代器完成的。如果没有迭代器,那么我们只能通过while循环,每次循环的时候通过下标来访问了。可迭代对象:可以直接使用for循环遍历的对象,成为可迭代的对象,常见的可迭代对象有:list、tuple、dict、set、str以及生成器更加专业的判断一个对象是否是可迭代对象:这个对象有一个__iter__方法,并且这个方法会返回一个迭代器
系统 2019-09-27 17:54:21 2521
插入排序是一种简单直观且稳定的排序算法。将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据。基本思想:每步将一个待排序的记录,按其关键码值的大小插入前面已经排序的列表中适当位置上,直到全部插入完为止。将排序的数组分成两部分:第一部分已排好序的元素,第二部分包含即待插入元素。在排序过程中,分别从待插入元素中取出元素,插入到已排好序的元素列表中。分类:直接插入排序,二分插入排序(又称折半插入排序)二分插入排序在后面的文章会写到。直接插
系统 2019-09-27 17:51:58 2521
while语句打印1-20的整数,并且每行打印五个数,为了实现每行5个数,我们使用一个if判断语句来实现,判断当打印出5个数之后,自动换行打印出来,直至完全输出来。希望对正在学习python的你们有所帮助。第一步:先打开我们的pycharm软件,然后新建一个python文件,“file”,“new”,“pythonfile”第二步:新建好python文件之后,我们在编辑页面输入以下代码:i=1whilei<=20:print(i,end='')ifi%5=
系统 2019-09-27 17:51:53 2521
练习介绍要求:请使用多协程和队列,爬取时光网电视剧TOP100的数据(剧名、导演、主演和简介),并用csv模块将数据存储下来。时光网TOP100链接:http://www.mtime.com/top/tv/top100/目的:1.练习掌握gevent的用法2.练习掌握queue的用法fromgeventimportmonkey#gevent从库里导入monkey模块monkey.patch_all()#能把程序变成协作式运行,就是可以帮助程序实现异步imp
系统 2019-09-27 17:50:08 2521
目录简介Cookie出现原因实现原理Cookie操作cookie+session总结:简介前几节的介绍中我们已经有能力制作一个登陆页面,在验证了用户名和密码的正确性后跳转到后台的页面。但是测试后也发现,如果绕过登陆页面。直接输入后台的url地址也可以直接访问的。这个显然是不合理的。其实我们缺失的就是cookie和session配合的验证。有了这个验证过程,我们就可以实现和其他网站一样必须登录才能进入后台页面了。先说一下这种认证的机制。每当我们使用一款浏览器
系统 2019-09-27 17:49:13 2521
在利用Python进行系统管理的时候,特别是同时操作多个文件目录,或者远程控制多台主机,并行操作可以节约大量的时间。当被操作对象数目不大时,可以直接利用multiprocessing中的Process动态成生多个进程,10几个还好,但如果是上百个,上千个目标,手动的去限制进程数量却又太过繁琐,这时候进程池Pool发挥作用的时候就到了。Pool可以提供指定数量的进程,供用户调用,当有新的请求提交到pool中时,如果池还没有满,那么就会创建一个新的进程用来执行
系统 2019-09-27 17:48:11 2521
什么是异步?含义:双方不需要共同的时钟,也就是接收方不知道发送方什么时候发送,所以在发送的信息中就要有提示接收方开始接收的信息,如开始位,同时在结束时有停止位现象:没有共同的时钟,不考虑顺序来了就处理直观感受:就是不用等了,效率高同步含义:指两个或两个以上随时间变化的量在变化过程中保持一定的相对关系现象:有一个共同的时钟,按来的顺序一个一个处理直观感受:就是需要等候,效率低下那么今天我们看怎么用2种方法用代码实现tornado的异步?这些是导入的包:2种方
系统 2019-09-27 17:45:33 2521
常见错误1:错误地将表达式作为函数的默认参数在Python中,我们可以为函数的某个参数设置默认值,使该参数成为可选参数。虽然这是一个很好的语言特性,但是当默认值是可变类型时,也会导致一些令人困惑的情况。我们来看看下面这个Python函数定义:>>>deffoo(bar=[]):#bar是可选参数,如果没有提供bar的值,则默认为[],...bar.append("baz")#但是稍后我们会看到这行代码会出现问题。...returnbarPython程序员常
系统 2019-09-27 17:38:35 2521
这个实例是extjs4grid+servlet的分页查询,忙了一下午总算弄出来了,和大家交流分享一下,我也是这几天在自学的Extjs4,可能有些地方写的不太对,有错误希望大家指出来html页面代码;
系统 2019-08-29 23:30:06 2521