分类 Python 下的文章 - 炫Q香蕉派

分类 Python 下的文章

vs2010下用python

pytools的原始网站是http://pytools.codeplex.com/
后来改叫PTVS了,新版本支持新的VS,老版本最早能支持到VS2010,https://github.com/Microsoft/PTVS/releases/v2.1.1
没有进度,似乎死了
02.png

嗖的一下,完成了
03.png

建个项目
04.jpg

直接运行,挺好用啊
05.png

python下的串口操作

python和串口用得都很广,学习了一下python下的串口操作

ls /dev/ttyS*

发现0、1、2、3一共四个串口

dmesg | grep ttyS*

看一下日志,一一对应,查看资料http://wiki.friendlyarm.com/wiki/index.php/NanoPi_NEO/zh
neo.png

0号是debug口,3号没有引出,就剩1号(8T/10R)和2号(11T/22R),和以前的GPS测试比较吻合http://www.ickey.cc/community/thread-67030-1-13.html
串口测试的python例子

import serial  
t = serial.Serial('/dev/ttyS2',9600)  
n = t.write('you are my world')  
print t.portstr  
print n  
str = t.read(n)  
print str

需要短接11和22脚,同时需要pyserial的支持,安装方法如下

sudo apt-get install python-pip
pip install pyserial

- 阅读剩余部分 -

监控WEB服务器

很不幸的消息,mikuq.com又挂了,504 Gateway Time-out
不明原因,不过考虑做一个脚本来监控,大概步骤是这样的,

1、每隔一段时间访问一下mikuq.com
2、如果不正常则重起nginx
3、记录日志

听起来应该不太难,计划用python来写,测试代码

#!/usr/bin/env python
import httplib
import sys
import os
def reboot_nginx():
  os.system('nginx -s reload')
def check_webserver(address, port, resource):
  try:
    conn = httplib.HTTPConnection(address, port)
    print 'HTTP connection created successfully'
    req = conn.request('GET', resource)
    print 'request for %s successful' % resource
    response = conn.getresponse()
    print 'response status: %s' % response.status
  except httplib.error, e:
    print "HTTP connection failed: %s" % e
    return False
  finally:
    conn.close()
    print 'HTTP connection closed successfully'
  if response.status in [200, 301]:
    return True
  else:
    return False
check=check_webserver('mikuq.com', 80, '/')
print 'check_webserver returned %s' % check

还没有增加日志和定时器,待续......

python的签到脚本

一到周末就忘记签到,改编一段脚本,应该可以放到香蕉的计划任务中,至于怎么放还要学习,稍后补充

# -*- coding: utf-8 -*-
import urllib2
import urllib
import sys

def login(username, password):
    try:
        opener = urllib2.build_opener(urllib2.HTTPCookieProcessor())
        opener.open("http://mikuq.com/login").read()
        post_data = "uid=%s&pwd=%s" % (username, password)
        data = opener.open("http://mikuq.com/login", post_data).read()
        
        if data.decode("utf-8").find(u"退出登录") == -1:
            return None
        return opener
    except:
        return None

opener = login("uid", "pwd")
if not opener:
    print("fail")
else:
    print "ok"
    content = opener.open("http://mikuq.com/signin").read()
    print content.decode("gbk")

sudo vi /etc/crontab
5 0 * * * root python /home/pi/py/qiandao.py
00:05签到,不过还是第7名,再提前一些00:02吧