![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python
ztfDeveloper
GitHub:https://github.com/ZTFsmart
个人博客:https://ztfsmart.github.io/
展开
-
Python动态语言-动态添加属性和方法
动态语言的定义动态编程语言 是 高级程序设计语言 的一个类别,在计算机科学领域已被广泛应用。它是一类 在运行时可以改变其结构的语言 :例如新的函数、对象、甚至代码可以被引进,已有的函数可以被删除或是其他结构上的变化。动态语言目前非常具有活力。例如JavaScript便是一个动态语言,除此之外如 PHP 、 Ruby 、 Python 等也都属于动态语言,而 C 、 C++ 等语言则不属于动态语言。—原创 2017-09-14 09:32:21 · 4982 阅读 · 1 评论 -
scrapy定时运行
使用系统方法import timeimport oswhile True: os.system("scrapy crawl 你的spider") time.sleep(86400) #每隔一天运行一次 24*60*60=86400s时间可以随机,这样也不会检测到定时的爬虫了原创 2018-01-03 16:36:05 · 1229 阅读 · 0 评论 -
报错 No module named 'email.utils'; 'email' is not a package解决方法
运行python程序报错 : import email.utils ModuleNotFoundError: No module named ‘email.utils’; ‘email’ is not a package 最基本的就是安装这个模块,但是email是python自带的 后来网上查了原因先确保你的当前文件夹中不要有email.py,以及你自己的(测试文件的)pytho原创 2018-01-12 09:40:03 · 16173 阅读 · 11 评论 -
Python--爬虫--坑--持续更新中
记录下学习爬虫中遇到的坑1.Python2和Python3对文中的识别Python2要支持中文需要在头部添加# -*- coding: utf-8 -*-Python3直接支持中文2.Python2和Python3中urllib库的改变Python2中直接可以调用urllib2 Python3中需要from urllib import request3.Python2和Python3中爬取的文本的原创 2017-11-30 15:29:49 · 217 阅读 · 0 评论 -
Python--文字识别--Tesseract
1.介绍Tesseract 是一个 OCR 库,目前由 Google 赞助(Google 也是一家以 OCR 和机器学习技术闻名于世的公司)。Tesseract 是目前公认最优秀、最精确的开源 OCR 系统。 除了极高的精确度,Tesseract 也具有很高的灵活性。它可以通过训练识别出任何字体,也可以识别出任何 Unicode 字符。2.安装以下所有都是在mac上安装实现的//安装tesserac原创 2017-11-29 16:31:54 · 5226 阅读 · 1 评论 -
Python--正则匹配
正则表达式匹配规则Python 的 re 模块在 Python 中,我们可以使用内置的 re 模块来使用正则表达式。有一点需要特别注意的是,正则表达式使用 对特殊字符进行转义,所以如果我们要使用原始字符串,只需加一个 r 前缀,示例:r'chuanzhiboke\t\.\tpython're 模块的一般使用步骤如下:使用 compile() 函数将正则表达式的字符串形式编译为一个 Pattern原创 2017-11-20 09:44:22 · 235 阅读 · 0 评论 -
Python的虚拟环境virtualenv
Python的虚拟环境可以使一个Python程序拥有独立的库library和解释器interpreter,而不用与其他Python程序共享统一个library和interpreter。虚拟环境的好处是避免了不同Python程序间的互相影响(共同使用global library 和 interpreter),例如程序A需要某个库的1.0版本,而程序B需要同样这个库的2.0版本,如果程序B执行则A就不能转载 2017-10-24 09:35:48 · 158 阅读 · 0 评论 -
Python元类
1. 类也是对象在大多数编程语言中,类就是一组用来描述如何生成一个对象的代码段。在Python中这一点仍然成立:>>> class ObjectCreator(object):… pass…>>> my_object = ObjectCreator()>>> print my_object<__main__.ObjectCreator object at 0x8974f2c>但原创 2017-09-21 17:32:11 · 175 阅读 · 0 评论 -
Python生成器
生成器 通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。所以,如果列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不断推算出后续的元素呢?这样就不必创建完整的list,从而节省大量的空间。在Python中,这原创 2017-09-12 16:58:33 · 186 阅读 · 0 评论 -
Python垃圾回收机制(二)
1. Garbage collection(GC垃圾回收)引用计数机制:python里每一个东西都是对象,它们的核心就是一个结构体:PyObjecttypedef struct_object { int ob_refcnt; struct_typeobject *ob_type;} PyObject;PyObject是每个对象必有的内容,其中ob_refcnt就是做为引用计数。当一原创 2017-09-27 16:08:24 · 938 阅读 · 0 评论 -
Python垃圾回收机制(一)
1. 小整数对象池整数在程序中的使用非常广泛,Python为了优化速度,使用了小整数对象池, 避免为整数频繁申请和销毁内存空间。Python 对小整数的定义是 [-5, 257) 这些整数对象是提前建立好的,不会被垃圾回收。在一个 Python 的程序中,所有位于这个范围内的整数使用的都是同一个对象.同理,单个字母也是这样的。 但是当定义2个相同的字符串时,引用计数为0,触发垃圾回收2. 大整原创 2017-09-27 15:33:03 · 260 阅读 · 0 评论 -
Python语法中容易混淆的地方-类属性/实例属性/公有变量/私有化变量
容易混淆的地方xx: 公有变量_x: 单前置下划线,私有化属性或方法,from somemodule import *禁止导入,类对象和子类可以访问__xx:双前置下划线,避免与子类中的属性命名冲突,无法在外部直接访问(名字重整所以访问不到)_xx_:双前后下划线,用户名字空间的魔法对象或属性。例如:_init_ , __ 不要自己发明这样的名字xx_:单后置下划线,用于避免与Python原创 2017-09-09 16:55:59 · 512 阅读 · 0 评论 -
Python装饰器
很多写装饰器的都是直接甩给你最终的装饰器代码,然后给你说下大致的原理,比如:#现在,假设我们要增强now()函数的功能,比如,在函数调用前后自动打印日志,但又不希望修改now()函数的定义,这种在代码运行期间动态增加功能的方式,称之为“装饰器”(Decorator)。def log(func): def wrapper(*args, **kw): print('call %原创 2017-09-14 18:37:52 · 193 阅读 · 0 评论 -
定时爬虫部署到ubuntu16.4
把你的scrapy爬虫写好后,我们就可以写脚本来执行爬虫 脚本的逻辑就是先进去到爬虫所在的文件夹然后执行scrapy crawl yourSpider(你的爬虫的名称) 有个注意点就是scrapy在脚本中要写它的绝对路径,通过命令which scrapy来获取路径 脚本内容#!/bin/shcd /spider #此处写你爬虫的文件夹/usr/local/bin/scrapy crawl y原创 2018-01-04 18:26:12 · 986 阅读 · 0 评论