Python - 军军小站|张军博客
Python

利用Python自动监控网站并发送邮件告警的方法

前言因为有一些网站需要每日检查是否有问题,所以需要一个报警监控的机制,这个需要你指定你发送的邮箱和你接收的邮箱,就可以做到对网站自动监控了。这里用的是python3.5需要安装的插件:1、smtplib:发邮件需要用到2、pycurl:访问网站时会需要用到3、linecache:在读取txt网站清单时需要用到具体思路:python程序从txt里面批量读取到网站的信息,通过Curl.py模拟浏览器去访问网站,并且把访问的结果写入到以自己的网站名称-日期.tx

系统 2019-09-27 17:38:41 1893

Python

深入理解python try异常处理机制

深入理解pythontry异常处理机制#python的try语句有两种风格#一:种是处理异常(try/except/else)#二:种是无论是否发生异常都将执行最后的代码(try/finally)try/except/else风格try:<语句>#运行别的代码except<名字>:<语句>#如果在try部份引发了'name'异常except<名字>,<数据>:<语句>#如果引发了'name'异常,获得附加的数据else:<语句>#如果没有异常发生#try的

系统 2019-09-27 17:38:34 1893

Python

Python中__name__的使用实例

1.如果模块是被导入,__name__的值为模块名字2.如果模块是被直接执行,__name__的值为'__main__'Py1.py复制代码代码如下:#!/usr/bin/envpythondeftest():print'__name__=',__name__if__name__=='__main__':test()Py2.py复制代码代码如下:#!/usr/bin/envpythonimportPy1.pydeftest():print'__name__

系统 2019-09-27 17:38:30 1893

Python

简单讲解Python中的闭包

闭包并不是什么新奇的概念,它早在高级语言开始发展的年代就产生了。闭包(Closure)是词法闭包(LexicalClosure)的简称。对闭包的具体定义有很多种说法,这些说法大体可以分为两类:一种说法认为闭包是符合一定条件的函数,比如参考资源中这样定义闭包:闭包是在其词法上下文中引用了自由变量的函数。另一种说法认为闭包是由函数和与其相关的引用环境组合而成的实体。比如参考资源中就有这样的的定义:在实现深约束时,需要创建一个能显式表示引用环境的东西,并将它与相

系统 2019-09-27 17:38:28 1893

Python

python3批量删除豆瓣分组下的好友的实现代码

python3批量删除豆瓣分组下的好友的实现代码"""python3批量删除豆瓣分组下的好友2016年6月7日03:43:42codegay我两年前一时冲动在豆瓣关注了很多豆瓣的员工,好多,有四百个。我现在一时冲动想取消关注...,写这么一个脚本可以用来加快删除的速度。cookies还是直接从chrome读取出来用,参考我之前刚写的代码python3从chrome浏览器读取cookie,"""importosimportsqlite3importreimp

系统 2019-09-27 17:38:28 1893

Python

详解Python迭代和迭代器

我们将要来学习python的重要概念迭代和迭代器,通过简单实用的例子如列表迭代器和xrange。可迭代一个对象,物理或者虚拟存储的序列。list,tuple,strins,dicttionary,set以及生成器对象都是可迭代的,整型数是不可迭代的。如果你不确定哪个可迭代哪个不可以,你需要用python内建的iter()来帮忙。>>>iter([1,2,3])>>>iter({1:2,2:4})>>>iter(1234)Traceback(mostrece

系统 2019-09-27 17:38:24 1893

Python

Python 实现数据库更新脚本的生成方法

我在工作的时候,在测试环境下使用的数据库跟生产环境的数据库不一致,当我们的测试环境下的数据库完成测试准备更新到生产环境上的数据库时候,需要准备更新脚本,真是一不小心没记下来就会忘了改了哪里,哪里添加了什么,这个真是非常让人头疼。因此我就试着用Python来实现自动的生成更新脚本,以免我这烂记性,记不住事。主要操作如下:1.在原先basedao.py中添加如下方法,这样旧能很方便的获取数据库的数据,为测试数据库和生产数据库做对比打下了基础。defselect

系统 2019-09-27 17:38:12 1893

Python

更改Python命令行交互提示符的方法

一、定制Python的交互提示符Python的默认交互提示符为“>>>”,但它是可以定制的。Python启动后,先寻找PYTHONSTARTUP环境变量,然后执行此文件中变量指定的执行代码。一些Linux发布包提供了缺省的启动脚本,一般存放在其home目录,名为.pythonstartup。“Tab完成”和“命令历史”这两个功能增强了提示符应用,两者都基于readline模块。如果没有.pythonstartup文件,可以自己创建一个。简单例子:复制代码代

系统 2019-09-27 17:37:55 1893

Python

Python使用pygame模块编写俄罗斯方块游戏的代码实例

文章先介绍了关于俄罗斯方块游戏的几个术语。边框――由10*20个空格组成,方块就落在这里面。盒子――组成方块的其中小方块,是组成方块的基本单元。方块――从边框顶掉下的东西,游戏者可以翻转和改变位置。每个方块由4个盒子组成。形状――不同类型的方块。这里形状的名字被叫做T,S,Z,J,L,I,O。如下图所示:模版――用一个列表存放形状被翻转后的所有可能样式。全部存放在变量里,变量名字如S_SHAPE_TEMPLATEorJ_SHAPE_TEMPLATE着陆――

系统 2019-09-27 17:37:44 1893

Python

在Mac OS上使用mod_wsgi连接Python与Apache服务器

一、安装mod_wsgi3.4:./configure--with-apxs=/Users/levin/dev/apache2.2.27/bin/apxs--with-python=/usr/bin/pythonmakemakeinstall编辑httpd.conf使Apache导入模块mod_wsgi.so以及引入vhost配置文件:LoadModulewsgi_modulemodules/mod_wsgi.soIncludeconf/extra/htt

系统 2019-09-27 17:37:36 1893

Python

Mac在python3环境下安装virtualwrapper遇到的问题

前言我在使用mac安装virtualwrapper的时候遇到了问题,搞了好长时间,才弄好,在这里总结一下分享出来,供遇到相同的问题的朋友使用,少走些弯路。问题说明:Mac默认系统的python2,而我自己用的是brew安装的python3下面是我安装过程中出现的问题1.安装virtualwrapper打开终端,输入如下的命令pip3installvirtualenvpip3installvirtualenvwrapper2.在配置文件~/.bash_pro

系统 2019-09-27 17:56:58 1892

Python

python中执行shell命令的几个方法小结

最近有个需求就是页面上执行shell命令,第一想到的就是os.system,复制代码代码如下:os.system('cat/proc/cpuinfo')但是发现页面上打印的命令执行结果0或者1,当然不满足需求了。尝试第二种方案os.popen()复制代码代码如下:output=os.popen('cat/proc/cpuinfo')printoutput.read()通过os.popen()返回的是fileread的对象,对其进行读取read()的操作可以

系统 2019-09-27 17:56:49 1892

Python

python遇坑记录-json.loads

#-*-coding=utf-8-*-importjsonimportrequestsheader={'User-Agent':'googlespider','Content-Encoding':'gzip','X-Forwarded-For':'202.101.43.22',}classBusiness(object):def__init__(self):passdefmy_JSONDecodeError(self):"""我出现JSONDecodeEr

系统 2019-09-27 17:56:35 1892

Python

Centos 6.4 安装Python 2.7 python-pip的详细步骤

1.准备工作下载源码包wgethttp://python.org/ftp/python/2.7.3/Python-2.7.3.tar.bz2查看是否安装make工具~#rpm-qa|grepmakeautomake-1.11.1-4.el6.noarchmake-3.81-20.el6.x86_64如果没有安装make工具yum-yinstallgccautomakeautoconflibtoolmake查看是否安装zlib库~#rpm-qa|grepzl

系统 2019-09-27 17:56:34 1892

Python

LeetCode 腾讯50题Python实现之《二叉树的最大深度》

题目给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明:叶子节点是指没有子节点的节点。示例:给定二叉树[3,9,20,null,null,15,7],3/920/157返回它的最大深度3。思路BFS广度优先搜索,使用双端队列deque(因为性能比另外两种Queue好得多),在大循环内对二叉树的每个层做一次遍历,range(len(queue))使只遍历当前的层,每次大循环ans加1。由于每个节点仅访问一次,所以时间

系统 2019-09-27 17:56:23 1892