使用阿里云CDN后禁止疑似攻击IP的办法
之前在处理使用阿里云cdn网站的时候,我们可以通过nginx的$http_x_forwarded_for参数获取用户的真实IP。然后结合nginx配置对有攻击行为的IP做限制,例如返回403。具体方法可以参考这篇文章《Nginx网站使用CDN......
Python 2.x获取操作系统的默认编码和UnicodeDecodeError处理
之前有朋友反馈nagios微信报警插件在处理中文字符的时候会出现问题,因为时间关系这个问题就一直放着。今天抽空解决了下,已经可以正常使用了。具体代码可以详见github,我的github地址:https://github.com/z......
Python使用popen方法时出现僵尸进程的原因和处理方法
最近写完一个脚本后发现运行时linux上会出现一个僵尸进程。定位到改脚本,最后发现是因为popen处理不当引起的。僵尸进程类似如下。僵尸进程 defunct 的存在,虽然不占用内存和 CPU,但是会在进程任务管理树上......
用Python实现阿里云ecs主机公网IP的切换功能
对于采集、注册或者代理来说,如果服务器公网IP可以自动切换,那么可能会少很多麻烦。最近博主就使用阿里云的api实现了这个小功能。实现的步骤比较简单,首先需要申请阿里云的api key。然后申请vpc专有网络,......
Python中IP地址处理IPy模块的使用
IPy模块可以很好的帮助我们完成IP的计算和规划。现在网上也有很多IP地址计算的网站,这个模块实现的功能和他们也差不多。 安装 先下载源码,地址:https://pypi.python.org/pypi/IPy/ ,然后解压后使用命令pyt......
Python去除列表list重复或相似元素的方法
最近博主在分析数据库慢查询日志的时候想使用python把重复或者相似的sql去掉,这样就不用看很多类似的sql了。重复相同的数据去掉比较简单,可以使用内置的set命令完成。 例如: l1 = ['a','b','c','d','e','a'......
Nagios结合短信平台接口实现SMS短信告警
前面一篇文章介绍nagios集成微信报警,使用短信平台接口和微信接口思路一样。不能上网的服务器还是需要有个短信报警功能的。废话不多说,直接上代码。 #!/usr/bin/env python #coding:utf-8 import urllib......
使用Python增加Nagios微信报警通知的功能
Nagios强大的报警功能现在又有了新玩法,思路就是调用微信公共平台的api接口发送报警邮件。在正式操作之前,有几个准备工作要做。先安装nagios,可以使用我提供的nagios一键安装脚本。然后是去微信公共平台申......
通过Python解析xml监控nowsms脚本
nowsms短信彩信框架的admin页面有提供一个xml页面,该页面详细显示modem的各个状态。然后结合nagios,可以很好的监控modem状态。该xml地址类似如:http://192.168.0.115:8800/admin/xmlstatus?username=sijita......
使用dnspod和python动态域名解析ddns脚本实例
众所周知,国内拨号获取到都是动态ip地址,如果想让动态ip解析到域名一般使用的ddns服务有花生壳,金万维等。不过免费的花生壳我现在碰到很多次解析问题。找了dnspod的api,再加上脚本,应该很容易可以实现。 ......
Python标准库urllib2伪装http_referer和user-agent访问
前面博客介绍了python标准库urllib2的基本使用和linux系统curl命令伪装http_referer和user-agent访问,不懂的可以点击链接再看下。这篇文章继续以伪装为目的,不过完全使用urllib2来实现。步骤如下,先创建req......
Python标准库urllib2的使用和获取网站状态举例
Python 2.7标准库中的urllib2以urlopen函数的形式提供了一个非常简单的接口,我们可以使用这个函数来获取网站内容,比如可以用它来做网络爬虫。当然Urllib2也同样提供一个比较复杂的接口来处理复杂情况,例如......