python
文章平均质量分 91
Super-Coding
长风破浪会有时,直挂云帆济沧海
展开
-
一篇文章带你读懂批处理命令
批处理,顾名思义,批量处理,它可以将复杂的事情变得简单,最早出现在dos操作系统中,也就是我们经常说的cmd黑窗口,这在早期没有gui界面的时候用的是最多的,而且命令比较丰富,虽然现在有很多功能都被封装到了软件中,但是你会发现在dos中执行操作会更快,哪怕会比较麻烦,如果你无法忍受慢节奏。下面就基本命令咱们先看看吧,首先打开cmd窗口:你可以通过 快捷键 徽标键+R,然后输入cmd,也可以点击window系统右下角,然后点击运行,输入cmd即可。下面我们来看看吧:打开后可以看到这幅画面,转载 2021-05-22 10:44:34 · 360 阅读 · 0 评论 -
手把手教你用Scrapy爬虫框架爬取食品论坛数据并存入数据库
一、前言网络爬虫(又称为网页蜘蛛,网络机器人),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。------百度百科说人话就是,爬虫是用来海量规则化获取数据,然后进行处理和运用,在大数据、金融、机器学习等等方面都是必须的支撑条件之一。目前在一线城市中,爬虫的岗位薪资待遇都是比较客观的,之后提升到中、高级爬虫工程师,数据分析师、大数据开发岗位等,都是很好的过渡。二、项目目标本此介绍的项目其实不用想的太过复杂,最终要实现的目标也就是转载 2021-03-11 11:24:58 · 194 阅读 · 0 评论 -
为什么 GIL 让多线程变得如此鸡肋?
做 Python 开发时,想必你肯定听过GIL,它经常被Python程序员吐槽,说Python的多线程非常鸡肋,因为GIL的存在,Python无法利用多线程提高性能。但事实真的如此吗?这篇文章,我们就来看一下Python的GIL到底是什么?以及它的存在,到底对我们的程序有哪些影响。GIL是什么?查阅官方文档,GIL全程 Global Interpreter Lock,即全局解释器锁,它的官方解释如下:In CPython, the global interpreter lock, or GIL,转载 2021-03-10 20:16:26 · 166 阅读 · 0 评论 -
Python 操作MongoDB 基础详解
MongoDB是一种面向文档型的非关系型数据库(NoSQL),非关系型数据库中是以键值对存储,结构不固定,易存储,减少时间和空间的开销文档型数据库通常是以JSON或XML格式存储数据,而Mongodb使用的数据结构是BSON,即二进制JSON。和JSON相比,BSON提高储存和扫描效率,但空间占用会更多些。本文默认已经安装MongoDB服务器,着重介绍Python操作MongoDB的库PyMongo,在命令行中输入如下内容安装:# Windowpip install pymongo# Macpi转载 2021-03-04 11:11:00 · 226 阅读 · 1 评论 -
实战:开发Python项目管理平台Sailboat 5
Sailboat异常监控和钉钉机器人通知功能的编写异常信息的捕获代码在执行者的performer() 中,对应的代码如下:通过communicate() 方法获取到的输出和错误信息是分开的,我们通过if语句便可实现项目运行异常的监控。检测到有异常产生时将异常信息交给信息整理器,最后将整理好的信息通过钉钉机器人接口发送给指定的人。捕获到的异常信息分为用户主动记录和被动产生,用户主动记录的方法如:这种方式产生的异常内容大体如下:这种异常信息的前缀带有明显的标识。被动产生的异常如ValueErro原创 2020-12-08 12:23:27 · 430 阅读 · 0 评论 -
实战:开发Python项目管理平台Sailboat 4
Sailboat执行器的编写和日志的生成在sailboat/executor中新建名为actuator的Python文件,并定义执行者方法。对应的代码如下:将其引入到TimerHandler所在的文件,并传给APScheduler的add_job() 方法。代码改动如下:保存改动后,再次用Postman工具测试。此时服务端返回的信息如下:并且运行Sailboat的控制台输出了performer() 方法中打印的内容:这说明调度接口能够正常工作了。现在我们要做的是完善执行器的代码,让Sail原创 2020-12-07 16:52:11 · 171 阅读 · 0 评论 -
实战:开发Python项目管理平台Sailboat 3
接上一节平台存储结构设计工作结束后,接下来搭建基础结构Sailboat基础结构的搭建根据Flask文档介绍,我们很快可以搭建一个简单的Flask项目并启动。在sailboat/common.py中写入以下代码:from flask import Flaskapp = Flask(__name__)然后在sailboat/handler/router.py中写下:from common import app接着在sailboat/server.py中写下:from handler.rout原创 2020-12-07 15:40:09 · 504 阅读 · 1 评论 -
实战:开发Python项目管理平台Sailboat 2
Sailboat的权限设计思路Sailboat的定位是企业爬虫团队内部或个人使用的爬虫项目管理平台,非常明确的一点是,Sailboat并不会开放给外部的人员使用或访问。团队内部通常有如下几个角色:超级管理员——SuperUser,能够管理所有人员、项目及相关内容。开发者——Developer,只能够接触到属于自己的项目及相关内容。其他人员——Other,只能查看部分数据,无法接触开发者、管理员项目及相关内容。当然,不排除外部人员访问Sailboat,他们被划分为Anonymous。Anonym原创 2020-12-07 14:39:06 · 330 阅读 · 0 评论 -
实战:开发Python项目管理平台Sailboat
平台功能大体如下:支持非框架的Python项目,且保留框架项目的接口。与Scrapyd类似的项目部署功能。项目异常监控和通知功能。用户注册和登录。权限管理。动态添加或删除定时任务。项目调度记录展示。项目运行日志的收集和展示。Sailboat的模块规划和技术选型大致的模块如下:具有高兼容性的调度器模块。能够对EGG文件增/删/改/查的模块。负责监控程序异常的模块。能够对日志文件增/删/改/查的模块。权限管理模块。开放给用户部署项目的API。开放给用户调度项目的API。原创 2020-12-07 14:13:17 · 573 阅读 · 1 评论 -
APScheduler 定时模块使用
APScheduler的全称是Advanced Python Scheduler。APScheduler能够让任务延时执行或定时执行,还可以根据需求随时添加或删除指定的任务。它还允许将任务存储在数据库中,不会因为程序异常而丢失任务。安装命令如下:pip install apschedulerAPScheduler 时间格式:date:在某个特定时间仅执行一次,支持类UNIX系统中的Crontab时间格式interval:以固定的时间间隔执行,时间单位支持秒、分、时、周等。cron:在某个特定原创 2020-12-04 16:45:06 · 566 阅读 · 0 评论 -
生动形象地理解 判断,循环,函数,变量,模块,类和对象
什么是code?code就就是一种「语言」,一种计算机能读懂的语言。计算机是一个傻逼,他理解不了默认两可的任何东西。比如,你让你老公去买个西瓜,你老公会自己决定去哪里买,买几个,找个搞活动打折的买,总之,你给他钱,他就给你买回来让你吃到爽的西瓜。但是,你想让计算机买一个西瓜?你要告诉他:去门口的鲜丰水果店买,买沙瓤无子西瓜,若旁边的店打折,就去旁边的店买。总之,你不能让计算机做任何决定,你要清楚的告诉他所有情况下的所有的行为。而「code,就是你和计算机交流的语言,或者说是对计算机的命令」。我们就原创 2020-11-25 11:39:58 · 271 阅读 · 0 评论