- 军军小站|张军博客
搜索到与相关的文章
Python

python爬虫实战:利用scrapy,短短50行代码下载整站短视频

点击上方“何俊林”,马上关注,每天早上8:50准时推送真爱,请置顶或星标近日,有朋友向我求助一件小事儿,他在一个短视频app上看到一个好玩儿的段子,想下载下来,可死活找不到下载的方法。这忙我得帮,少不得就抓包分析了一下这个app,找到了视频的下载链接,帮他解决了这个小问题。因为这个事儿,勾起了我另一个念头,这不最近一直想把python爬虫方面的知识梳理梳理吗,干脆借机行事,正凑着短视频火热的势头,做一个短视频的爬虫好了,中间用到什么知识就理一理。我喜欢把事

系统 2019-09-27 17:57:10 1997

Python

python之生产者消费者模型实现详解

代码及注释如下#AutherBob#--*--conding:utf-8--*--#生产者消费者模型,这里的例子是这样的,有一个厨师在做包子,有一个顾客在吃包子,有一个服务员在储存包子,这个服务员我们就可以用queue来实现importthreadingimportqueueimporttime'''defconsumer(p,que):id=que.get()print("[%s]来吃包子了,我吃到的包子的名字是[%s]"%(p,id))defprodc

系统 2019-09-27 17:55:40 1997

Python

Python 内存分配时的小秘密

Python中的sys模块极为基础而重要,它主要提供了一些给解释器使用(或由它维护)的变量,以及一些与解释器强交互的函数。本文将会频繁地使用该模块的getsizeof()方法,因此,我先简要介绍一下:该方法用于获取一个对象的字节大小(bytes)它只计算直接占用的内存,而不计算对象内所引用对象的内存这里有个直观的例子:importsysa=[1,2]b=[a,a]#即[[1,2],[1,2]]#a、b都只有两个元素,所以直接占用的大小相等sys.getsi

系统 2019-09-27 17:55:36 1997

Python

Python入门篇之字符串

所有标准的序列操作对字符串都适用,但字符串是不可变的字符串常量:单引号:‘spa"m'双引号:"spa'm"三引号:'''...spam...''',"""...spam..."""转义字符:"s\tp\na\om"Raw字符串:r"C:\new\test.spm"Unicode字符串:u'eggs\u0020spam单双引号是一样的单双引号可以互换,字符常量表达式可以用两个单引号或两个双引号来表示--两种形式同样有效返回相同类型的对象:复制代码代码如下:

系统 2019-09-27 17:55:14 1997

Python

如何为Python终端提供持久性历史记录

问题有没有办法告诉交互式Pythonshell在会话之间保留其执行命令的历史记录?当会话正在运行时,在执行命令之后,我可以向上箭头并访问所述命令,我只是想知道是否有某种方法可以保存这些命令,直到下次我使用Pythonshell时。这非常有用,因为我发现自己在会话中重用命令,这是我在上一个会话结束时使用的。解决方案当然你可以用一个小的启动脚本。来自python教程中的交互式输入编辑和历史替换:#Addauto-completionandastoredhist

系统 2019-09-27 17:53:28 1997

Python

Python 提高元组的可读性

假设学生系统中数据为固定格式:(名字,年龄,性别,邮箱)('jack','16','male','jack3001@gmail.com')('eric','17','male','eric@qq.com')('xander','16','female','lucy123@yahoo.com')方案一:fromenumimportIntEnumNAME,AGE,SEX,EMAIL=range(4)s=('jim','16','male','jim8721@g

系统 2019-09-27 17:52:20 1997

Python

python程序异常崩溃时如何快速分析并解决问题

程序异常崩溃时会提供非常详细的错误信息,掌握正确的分析方法,就可以快速定位问题并解决问题,下面这段代码会引发异常导致程序终止deffunc_tet():func_sum('4',3)deffunc_sum(a,b):value=a+breturnvaluefunc_tet()运行这段程序,异常信息如下我将异常信息分为两部分,分析时,先关注最后一行绿色框内的信息,这里的信息明确的指明了异常的类型和异常的解释信息,这是我们分析问题的第一步,随着经验的积累,你很

系统 2019-09-27 17:52:03 1997

Python

Python|队列Queue

一前言本文算是一次队列的学习笔记,Queue模块实现了三种类型的队列,它们的区别仅仅是队列中元素被取回的顺序。在FIFO队列中,先添加的任务先取回。在LIFO队列中,最近被添加的元素先取回(操作类似一个堆栈)。优先级队列中,元素将保持排序(使用heapq模块)并且最小值的条目第一个返回。值得注意的是Python2.X版本中调用队列需要引用importQueue而在Python3.X版本中则需要importqueue二队列特性2.1Queue的常用函数Que

系统 2019-09-27 17:50:08 1997

Python

python实现定制交互式命令行的方法

Python的交互式命令行可通过启动文件来配置。当Python启动时,会查找环境变量PYTHONSTARTUP,并且执行该变量中所指定文件里的程序代码。该指定文件名称以及地址可以是随意的。按Tab键时会自动补全内容和命令历史。这对命令行的有效增强,而这些工具则是基于readline模块实现的(这需要readline程序库辅助实现)。此处为大家举一个简单的启动脚本文件例子,它为python命令行添加了按键自动补全内容和历史命令功能。[python@pytho

系统 2019-09-27 17:48:02 1997

Python

python数组循环处理方法

简介本文主要介绍python数组循环语法。主要方式有元素遍历,索引遍历,enumerate,zip,list内部等。普通循环list1=['item1','item2','item3']foriteminlist1:print(item)//结果item1item2item3根据index循环1list1=['item1','item2','item3']index=0foriteminlist1:print('index:'+str(index)+',v

系统 2019-09-27 17:47:33 1997