自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

转载 python装饰器

开放–封闭原则: 封闭:以实现的功能代码不应该被修改 开放:对现有功能的扩展开放 装饰器本质上是一个函数,他可以让其他函数在不需要做任何代码处理的前提下增加额外的功能,装饰器的返回值也是一个函数对象。它经常用于有切面需求的场景,比如:插入日志、性能测试、事务处理、缓存、权限校验等场景,装饰器是解决这类问题的绝佳设计。有了装饰器,我们就可以抽离出大量与函数功能本身无关的雷同代码到装饰器中并继续重用。...

2019-11-03 11:46:06 207

原创 Python中一些不为人知的基础技巧总结

本文主要给大家总结介绍了关于Python的一些基础技巧,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 1.startswith()和endswith()参数可以是元组 当检测字符串开头或结尾时,如果有多个检测值,可以用元组作为startswith()和endswith()参数: 2.enumerate()设置start参数做为索引起始值 当用enumerate()迭代同时要得...

2019-11-02 21:41:10 278

原创 scrapy工作流程

一:scrapy 工作原理介绍: 千言万语,不如一张图来的清晰: 解释说明: 1、从优先级队列中获取request对象,交给engine 2、engine将request对象交给下载器下载,期间会通过downloadmiddleware的process_request方法 3、下载器完成下载,获得response对象,将该对象交给engine,期间会经过downloadmiddleware的pr...

2019-11-02 19:56:46 407

原创 Python的线程、进程和协程

进程:一个进程就是一个正在运行的程序,它是计CPU分配资源的最小单位。每个进程都有自己独立的内存空间。能同时执行的进程数最多不超过内核数,也就是每个内核 同一时刻只能执行一个进程。那么多进程就是能【同时】运行多个进程(比如同时听音乐和写代码),这里的【同时】可以指CPU通过极快地在进程间来回切换来实现,所 以即使是单核CPU也能运行多进程。 线程:线程是CPU执行的基本单元。线程存在于进程中。一个...

2019-11-01 17:09:29 176

原创 python-scrapy的Pipeline中sql的万能插入语句

def process_item(self, item, spider): keys, values = zip(*item.items()) sql = "INSERT INTO `{}` ({}) VALUES ({}) ON DUPLICATE KEY UPDATE {}".format( self.table_name, ...

2019-10-28 15:20:33 480

原创 python中含__init__.py 的文件的作用

1、init.py是Python中package的标识 init.py 文件的一个主要作用是将文件夹变为一个Python模块,Python 中的每个模块的包中,都有__init__.py 文件 2、批量引入(定义__all__用来模糊导入) 我们在python中导入一个包时,实际上是导入了它的__init__.py文件,这样我们可以在__init__.py文件中批量导入我们所需要的模块,而不再需要...

2019-10-28 00:44:35 328

原创 INFO [alembic.env] No changes in schema detected. 那些年踩过的坑。

刚在写flask项目一直遇到db init后一起无法db migrate 我的flask项目拆分结构是: db的加载是在init_ext()里面 这时编写我的model init.py下的 这时models.py下的__init__.py 分析了各种原因,最终发现原来是我们之写了Model,这个时候app是不知道我们的模型在哪,所以必须在其他地方引用一下。可以在api的位置加上。 ...

2019-10-28 00:30:15 1168

原创 爬虫笔记05-爬虫小练习多进程redis分布式

上篇写到多进程是通过queue消息队列来完成,这次将links链接存入redis来实现分布式。 实现思路: 1.循环links时将link链接存入redis数据库。 2.开启多线程从redis中读取每条链接 import sys import time import requests from lxml import etree import threading import signal imp...

2019-10-27 12:56:22 181

原创 爬虫笔记04-爬虫小练习多进程改进版

上篇写了一个单进程爬224个页面需要用450秒的时间,这次用下python的多进程的方式去改写一下,尽管大家都说python的多进程是鸡肋,但存在就是合理,多进程思路也很简单。 1,创建多个Queue队列,在循环links链接时将每个link链接put进queue列表里。 2.开启多个线程同时将每个queue join进每个线程,当线程暂用时会进入阻塞状态 3.当queue队列长度为0时,向进程...

2019-10-27 12:05:26 161

原创 爬虫笔记03-爬虫小练习

爬个小网站:http://www.qianmu.org/(迁木网) 网站里主要是国外的大学的一些信息 请求入门页url是:http://www.qianmu.org/2019USNEWS%E4%B8%96%E7%95%8C%E5%A4%A7%E5%AD%A6%E6%8E%92%E5%90%8D%E7%BE%8E%E5%9B%BD%E5%9B%BD%E5%86%85%E6%8E%92%E5%90%...

2019-10-27 00:50:51 360

原创 爬虫笔记02--xpath常用语法

xpath是一门在XML文档中查找信息的语言 概念 节点(Node) ​ 元素、属性、文本、命名空间、文档(根)节点 节点关系 ​ 父(parent) ​ 子 (Children) ​ 同胞 (Sibling) ​ 先辈 (Ancestor) ​ 后代 (Descendant) xpath语法 表达式 描述 nodename 选取此节点的所有子节点 // 从任意子节点中选取...

2019-10-26 13:26:39 278

原创 xshell的快捷键(非常实用)

删除 ctrl + d 删除光标所在位置上的字符相当于VIM里x或者dl ctrl + h 删除光标所在位置前的字符相当于VIM里hx或者dh ctrl + k 删除光标后面所有字符相当于VIM里d shift+$ ctrl + u 删除光标前面所有字符相当于VIM里d shift+^ ctrl + w 删除光标前一个单词相当于VIM里db ctr...

2019-10-26 12:54:55 247

原创 爬虫笔记01--curl,wget,urllib,requests简单使用方法

苦于知识学了又忘,忘了有学,好记性不如烂笔头吧。记录一下。 curl指令和wget命名没有安装centos版本可以用下面的命令。 yum install curl yum install wget 注意:安装的时候可能会遇到报错,有可能是openssl没装, yum install openssl yum install openssl-dev 如果是ubuntu系统把yum改成apt即可。 ...

2019-10-25 21:45:37 863

原创 Python学习笔记-flask配置成django文件目录风格--2

在env的python环境退出,换成mydjango。 deactivate workon mydjango 然后通过django指令新建一个HelloDjango项目和app应用 django-admin startproject HelloDjango cd HelloDjango python manage.py startapp app tree HelloDjango 我们可以看到...

2019-10-22 16:16:03 406

原创 Python学习笔记-flask配置成django文件目录风格--1

准备vm的centos7 配置ip192.168.3.88 安装ssh用xshell连接 新建python虚拟环境 个人喜欢直接把每个py环境包跟着项目一起. 所以先在根目录新建个项目文件夹把 mkdir py_flask 配置别名进入虚拟环境。 alias py_flask='source /py_flask/env/bin/activate' 下次从服务器指令进入虚拟环境直接输入py_f...

2019-10-22 14:30:52 356

原创 Python学习日记-简单小爬虫

Python学习日记-简单小爬虫 简单小爬虫 最近一直在学习python,学了又忘,忘了又学, 好记性不如烂笔头。索性记录下来,方便以后翻看。 一、思路:找一个网页通过python的urllib包获取源代码,在通过re模块和正则表达式匹配需要的字段保存如mysql数据库 二、实现:由于不知爬那个网页,突然浏览器弹出H网链接,那就爬它吧,嘻嘻嘻:https://www.gzkd888.com/280...

2019-09-21 16:59:13 300

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除