写爬虫似乎没有比用Python更合适了,Python社区提供的爬虫工具多得让你眼花缭乱,各种拿来就可以直接用的library分分钟就可以写出一个爬虫出来,今天就琢磨着写一个爬虫,将廖雪峰的Python教程爬下来做成PDF电子书方便大家离线阅读。开始写爬虫前,我们先来分析一下该网站1的页面结构,网页的左侧是教程的目录大纲,每个URL对应到右边的一篇文章,右侧上方是文章的标题,中间是文章的正文部分,正文内容是我们关心的重点,我们要爬的数据就是所有网页的正文部分
系统 2019-09-27 17:55:45 2112
先看服务端的代码importsys#importsocketimporttimeimportgeventfromgeventimportsocketfromgeventimportmonkeymonkey.patch_all()#类似于python中的黑魔法,把很多模块的阻塞的变成非阻塞的,比如socket中的rece和send都变#为不阻塞了defserver(port):s=socket.socket()s.bind(("127.0.0.1",port
系统 2019-09-27 17:55:42 2112
本文实例讲述了python装饰器常见使用方法。分享给大家供大家参考,具体如下:python的装饰器,可以用来实现,类似springAOP类似的功能。一样可以用来记录某个方法执行前做什么,执行后做什么,或者用来记录日志,运行的时间等,更有甚者,用这个来做权限拦截,也未尝不可。从两个方面来描述python的装饰模式:1.对普通方法的装饰2.对在class类中的方法的装饰,不需要给参数的情况3.对在class类中的方法的装饰,需要给参数的情况一,对普通方法的装饰
系统 2019-09-27 17:55:42 2112
读取文件,将每一行作为列表的一个值,求每个字符串出现的次数,以及有哪些字符串。写入文件,按次数大小排序,次数后面对应着字符串#-*-coding:utf-8-*-input1=open('jpc.txt','r')output1=open('out.txt','w')list_of_all_the_lines=input1.read()a=list_of_all_the_lines.splitlines(False)myset=set(a)mylist_c
系统 2019-09-27 17:55:22 2112
目录一、Python基本语法元素1.1温度转换二、Python基本图形绘制2.1Python蟒蛇绘制一、Python基本语法元素缩进、注释、命名、变量、保留字数据类型、字符串、整数、浮点数、列表赋值语句、分支语句、函数input()、print()、eval()、print()格式化1.1温度转换#TempConvert.pyTempStr=input("请输入带有符号的温度值:")ifTempStr[-1]in['F','f']:C=(eval(Temp
系统 2019-09-27 17:55:09 2112
三种方法:①直接使用dict②使用defaultdict③使用Counterps:`int()`函数默认返回0①dicttext="I'mahandsomeboy!"frequency={}forwordintext.split():ifwordnotinfrequency:frequency[word]=1else:frequency[word]+=1②defaultdictimportcollectionsfrequency=collections.d
系统 2019-09-27 17:54:44 2112
有很多程序运行时间比较长,如果不将运行过程输出将很难判断程序运行的时间。下边这段程序将按照上图所示的格式输出程序运行进程、已用时间、剩余时间。deftime_change(time_init):#定义将秒转换为时分秒格式的函数time_list=[]iftime_init/3600>1:time_h=int(time_init/3600)time_m=int((time_init-time_h*3600)/60)time_s=int(time_init-t
系统 2019-09-27 17:54:42 2112
本文实例讲述了Python使用random模块生成随机数操作。分享给大家供大家参考,具体如下:今天在用Python编写一个小程序时,要用到随机数,于是就在网上查了一下关于Python生成各种随机数的方法,现将其总结如下:此处,利用Python中的random模块生成随机数。因此首先必须导入该模块:importrandom一.随机产生一个元素importrandom#生成一个0到1的随机浮点数:0<=n<1.0print(random.random())>>
系统 2019-09-27 17:54:26 2112
1Python开发环境搭建1.1Python版本介绍Python目前官方运营维护的版本分为2.x版本和3.x版本。2.x版本相对来说,稳定性更高,兼容的主流第三方扩展库更多,商用开发首选;3.x架构设计更完善,性能更好,一些发展前端的第三方扩展库以3.x版本首选兼容和维护。因为2.x版本和3.x版本存在架构上的差异,所以互不兼容,在开发选择版本时需要注意。目前2.x版本的最新版本是2.7.14;3.x版本的最新版本是3.6.3。1.2Python下载与安装
系统 2019-09-27 17:52:53 2112
random模块中的常用函数复制代码代码如下:random()返回一个位于区间[0,1]内的实数;uniform(a,b)返回一个位于区间[a,b]内的实数;randint(a,b)返回一个位于区间[a,b]内的整数;choice(sequence)返回一个位于sequence中的元素,其中,sequence为一个有序序列,如list、string或者tuple等类型;randrange([start],stop[,step])等效于choice(rang
系统 2019-09-27 17:52:43 2112