最近在使用爬虫爬取数据时,经常会返回403代码,大致意思是该IP访问过于频繁,被限制访问。限制IP访问网站最常用的反爬手段了,其实破解也很容易,就是在爬取网站是使用代理即可,这个IP被限制了,就使用其他的IP。对于高大上的公司来说,他们基本都使用收费的代理,基本不会有什么问题,比较稳定。像我这样的矮矬穷,肯定是用不起收费的代理。一般都是使用国内免费的代理,网上也有很多提供免费的代理。很多人都是从网上爬取一批免费的代理IP,存放在存储媒介中,例如excel文
系统 2019-09-27 17:56:04 1904
本文实例讲述了python装饰器常见使用方法。分享给大家供大家参考,具体如下:python的装饰器,可以用来实现,类似springAOP类似的功能。一样可以用来记录某个方法执行前做什么,执行后做什么,或者用来记录日志,运行的时间等,更有甚者,用这个来做权限拦截,也未尝不可。从两个方面来描述python的装饰模式:1.对普通方法的装饰2.对在class类中的方法的装饰,不需要给参数的情况3.对在class类中的方法的装饰,需要给参数的情况一,对普通方法的装饰
系统 2019-09-27 17:55:42 1904
八大排序算法的Python实现原文地址插入排序插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据,算法适用于少量数据的排序,时间复杂度为O(n^2)。是稳定的排序方法。插入算法把要排序的数组分成两部分:第一部分包含了这个数组的所有元素,但将最后一个元素除外(让数组多一个空间才有插入的位置),而第二部分就只包含这一个元素(即待插入元素)。在第一部分排序完成后,再将这个最后元素插入到已排好序的第一部分中。代码实现
系统 2019-09-27 17:55:35 1904
目录python单例模式1、什么是单例模式2、__new__方法实现3、装饰器实现4、模块实现5、共享属性实现6、元类实现python单例模式1、什么是单例模式单例模式(SingletonPattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在。当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场。比如,某个服务器程序的配置信息存放在一个文件中,客户端通过一个AppConfig的类来读取配置文件的信息。如果在
系统 2019-09-27 17:55:32 1904
本文实例展示了一个脚本python用来转化表配置数据xml并生成相应的解析代码。但是在中文编码上出现了乱码,现将解决方法分享出来供大家参考。具体方法如下:1.Python文件设置编码utf-8(文件前面加上#encoding=utf-8)2.MySQL数据库charset=utf-83.Python连接MySQL是加上参数charset=utf84.设置Python的默认编码为utf-8(sys.setdefaultencoding(utf-8)示例代码如
系统 2019-09-27 17:55:27 1904
1.代码风格在Python中,每行程序以换行符代表结束,如果一行程序太长的话,可以用“\”符号扩展到下一行。在python中以三引号(""")括起来的字符串,列表,元组和字典都能跨行使用。并且以小括号(...)、中括号[...]和大括号{...}包围的代码不用加“\”符也可扩展到多行。在Python中是以缩进来区分程序功能块的,缩进的长度不受限制,但就一个功能块来讲,最好保持一致的缩进量。如果一行中有多条语句,语句间要以分号(;)分隔。以“#”号开头的内容
系统 2019-09-27 17:55:15 1904
Python语言有一个比较Pythonic的功能,也是一个具有很强大功能的特性,那就是装饰器。1.Python装饰器的原理Python中的装饰器是通过利用了函数特性的闭包实现的,所以我们需要了解Python闭包的原理,以及函数的功能特性。1.1函数特性函数作为变量传递defadd(x):returnx+1a=add(5)print(a)#运行结果:6函数作为参数传递defadd(x):returnx+1defexecute(f):returnf(3)pri
系统 2019-09-27 17:54:59 1904
优化算法时间复杂度算法的时间复杂度对程序的执行效率影响最大,在Python中可以通过选择合适的数据结构来优化时间复杂度,如list和set查找某一个元素的时间复杂度分别是O(n)和O(1)。不同的场景有不同的优化方式,总得来说,一般有分治,分支界限,贪心,动态规划等思想。减少冗余数据如用上三角或下三角的方式去保存一个大的对称矩阵。在0元素占大多数的矩阵里使用稀疏矩阵表示。合理使用copy与deepcopy对于dict和list等数据结构的对象,直接赋值使用
系统 2019-09-27 17:54:58 1904
简介壁纸的选择其实很大程度上能看出电脑主人的内心世界,有的人喜欢风景,有的人喜欢星空,有的人喜欢美女,有的人喜欢动物。然而,终究有一天你已经产生审美疲劳了,但你下定决定要换壁纸的时候,又发现网上的壁纸要么分辨率低,要么带有水印。壁纸的选择其实很大程度上能看出电脑主人的内心世界,有的人喜欢风景,有的人喜欢星空,有的人喜欢美女,有的人喜欢动物。然而,终究有一天你已经产生审美疲劳了,但你下定决定要换壁纸的时候,又发现网上的壁纸要么分辨率低,要么带有水印。演示图片
系统 2019-09-27 17:54:45 1904
datetime模块中包含五种基本类型:date、time、datetime、timedelta和tzinfo,tz是timezone的缩写,tzinfo用于表示时区信息。一,date类型date类型表示日期,是由year、month和day构成的对象1,初始化date对象使用date(year,month,day)函数来初始化date对象:fromdatetimeimportdatemydate=date(year,month,day)2,date对象函
系统 2019-09-27 17:54:44 1904