在采集网页信息的时候,经常需要伪造报头来实现采集脚本的有效执行下面,我们将使用urllib2的header部分伪造报头来实现采集信息方法1、#!/usr/bin/python#-*-coding:utf-8-*-#encoding=utf-8#Filename:urllib2-header.pyimporturllib2importsys#抓取网页内容-发送报头-1url="//www.jb51.net"send_headers={'Host':'www.
系统 2019-09-27 17:47:48 2030
刚开始学习python,python相对于java确实要简洁易用得多。内存回收类似hotspot的可达性分析,不可变对象也如同java得Integer类型,with函数类似新版本C++的特性,总体来说理解起来比较轻松。只是函数部分参数的"*"与"**",闭包等问题,着实令人迷糊了一把,弄清概念后写下此文记录下来,也希望本文能够帮助其他初学者。所以本文是一篇学习笔记,着重于使用的细节和理解上,首先分别介绍了函数各种参数类型在调用和声明时的区别,及其在混用时需
系统 2019-09-27 17:47:08 2030
预编译importrere1=re.compile(r'元字符组成的正则规则')#元字符下面会说re1.方法()#方法下边也会说元字符:表示普通字符:.#除了\n外都可以匹配的到\d#只匹配纯数字0-9\D#和\d相反,除了数字全都匹配\s#只匹配空格\S#和\s相反,除了空格,全都匹配#我喜欢用[\s\S]*?匹配所有\w#只匹配纯数字或大小写字母或下划线\W#与\w恰好相反,除了纯数字、大小写字母、下划线全都匹配[]#[abcde]只要包含这个列表的字
系统 2019-09-27 17:46:42 2030
在带有参数的的函数进行装饰时defpri(func):defone(*a,**b):#这里要带参func(*a,**b)#这里也要带参returnone@prideftest(*a,**b):#不定长参数print(a,b)test(1,2,a=2)对有返回值的函数进行装饰时defpri(func):defone():returnfunc()#要将func()返回returnone@prideftest():returnTrueprint(test())带
系统 2019-09-27 17:46:29 2030
一切皆是对象在Python一切皆是对象,包括所有类型的常量与变量,整型,布尔型,甚至函数。参见stackoverflow上的一个问题Iseverythinganobjectinpythonlikeruby代码中即可以验证:#everythininpythonisobjectdeffuction():returnprintisinstance(True,object)printisinstance(0,object)printisinstance('a',o
系统 2019-09-27 17:46:22 2030
Python中将数字格式化时,有些时候需要将数字格式化,为了显示美观,需要补零。今天在写代码时,看见别人的奇怪写法,觉得有必要在这里把Python更好的写法重写一下。看到的别人的代码foriinrange(99):num_str=str(i)iflen(num_str)>1:num_str='0'+str(i)print(num_str)看到这段代码,我的三观被刷新了。如果补零比较多,确实代码的行数可观。常见和不常见的格式化补零方法foriinrange(
系统 2019-09-27 17:45:59 2030
本文定位:已将CPU历史数据存盘,等待可视化进行分析,可暂时没有思路。前面一篇文章(//www.jb51.net/article/61956.htm)提到过在linux下如何用python将top命令的结果进行存盘,本文是它的后续。python中我们可以用matplotlib很方便的将数据可视化,比如下面的代码:复制代码代码如下:importmatplotlib.pyplotaspltlist1=[1,2,3]list2=[4,5,9]plt.plot(l
系统 2019-09-27 17:45:54 2030
Python的一个备份程序这是一个备份脚本。路径请自行更换。这是一个备份脚本,按照当前日期分目录,以时间作为文件名,并且可以在文件名加入备注信息.以zip方式作为压缩方式,有特殊需求可以更改.实例代码:#!/usr/bin/python#coding=utf-8#这是一个备份脚本,按照当前日期分目录,以时间作为文件名,并且可以在文件名加入备注信息.#以zip方式作为压缩方式,有特殊需求可以更改.importosimporttimesource=['/hom
系统 2019-09-27 17:38:29 2030
①GET#-*-coding:utf-8-*-importrequestsdefget(url,datas=None):response=requests.get(url,params=datas)json=response.json()returnjson注:参数datas为json格式②POST#-*-coding:utf-8-*-importrequestsdefpost(url,datas=None):response=requests.post(
系统 2019-09-27 17:38:03 2030
本人已经在运维行业工作了将近十年,我最早接触Linux是在大二的样子,那时候只追求易懂,所以就选择了Ubuntu作为学习、使用的对象,它简单、易用、好操作、界面绚丽,对于想接触Linux的新手来说是非常不错的。后来因为个人的知识有限,玩不转Linux的种种配置、各种插件以及软件缺失,加之没有持之以恒的坚持下去,使用了一段时间后感觉Bug多、没游戏、办公写文档也不方便,很多软件需要现学,最终希望用大学时光学习Linux的愿望夭折了。后来一段时间里,自己接触了
系统 2019-09-27 17:37:48 2030