用python搞定个自动发新浪微博的, 连着个摄像头,对着墙头外的景色,一小时自动发一次新浪微博。
用的技术有:pywin32, 用来控制弹出的上传图片窗口, 只能在window用:
#-*-coding:gbk-*- #import autopy import os,sys import time import ctypes import win32gui import win32api import win32con import threading print "start。。。" time.sleep(1) pwin = win32gui.FindWindow(None,'打开') #pwin = win32gui.FindWindowEx(None,None,None,'打开') print 'pwin:',pwin,hex(pwin) a1=win32gui.FindWindowEx(pwin,None,'ComboBoxEx32',None) print 'a1:',a1,hex(a1) a2=win32gui.FindWindowEx(a1,None,'ComboBox',None) print 'a2:',a2,hex(a2) a3=win32gui.FindWindowEx(a2,None,'Edit',None) print 'a3:',a3,hex(a3) a4=win32gui.FindWindowEx(pwin,None,None,'打开(&O)') print 'a4:',a4,hex(a4) if a3 !=0 and a4!=0: a= os.getcwd()+'\\'+'test5.png' filenamex = a print filenamex win32gui.SendMessage(a3, win32con.WM_SETTEXT, 0, str(filenamex)) win32gui.PostMessage(a4, win32con.WM_LBUTTONDOWN, win32con.MK_LBUTTON, 0) time.sleep(0.5) win32gui.PostMessage(a4, win32con.WM_LBUTTONUP, win32con.MK_LBUTTON, 0) time.sleep(0.5)
PyQt4: 使用qwebkit来登录新浪微博看这里: qtwebkit登录新浪微博代码
VideoCapture:用于获取摄像头图像
from VideoCapture import Device cam = Device(devnum=0) cam.saveSnapshot('image1.bmp', timestamp=1) cam.saveSnapshot('image2.bmp', timestamp=1) cam.saveSnapshot('image3.bmp', timestamp=1) cam.saveSnapshot('image4.bmp', timestamp=1) cam.saveSnapshot('image5.bmp', timestamp=1) cam.saveSnapshot('image6.bmp', timestamp=1)
原来在第6张图片时,摄像头才会清晰的.