Chinaunix首页 | 论坛 | 博客
  • 博客访问: 657661
  • 博文数量: 220
  • 博客积分: 10487
  • 博客等级: 上将
  • 技术积分: 2072
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-09 00:25
文章分类

全部博文(220)

文章存档

2012年(5)

2011年(38)

2010年(135)

2009年(42)

我的朋友

分类: Java

2009-09-24 02:59:31

Python这种脚本语言的强大功能越来越被广大的程序员所重视,这种之前在国内流行度不高的语言近来气势高涨。各种第三方模块层出不穷。
 
本文介绍的便是一种能非常方便操作IE的第三方工具,,他能让你如同写JS一样来操作IE浏览器。包括自动启动,访问链接,设置文本框值,获取按钮,执行点击事件,甚至执行页面JS方法等等。下面用一个实际的例子详加说明:
 
以下简短代码便轻易实现,登录本人ChinaUnix,并以此点击日志文章,发文章,设置标题,分类,和博客内容,最后执行确定,发布成功。
 
 

# -*- coding: gb2312 -*-
from PAM30 import PAMIE
from string import split
#===============================================================================
# 从文件读取配置信息,登录url,账户,密码等
#===============================================================================
def getCfgFromFile(fileName='settings.txt'):
    file = open(fileName)
    dict = {}
    line = file.readline()
    while line != '':
        args = split(line, '=')
        dict[args[0]] = args[1].decode('utf-8').encode('gb2312')
        line = file.readline()
    return dict
dict = getCfgFromFile()
ie = PAMIE()
#===============================================================================
# 打开登录页面,设置用户/密码
#===============================================================================
ie.navigate(dict['login-url'])
ie.setTextBox('username', dict['username'])
ie.setTextBox('password', dict['password'])
#===============================================================================
# 获取登录按钮
#===============================================================================
loginbtn = ie.findElement('input', 'type', 'image')
ie.clickElement(loginbtn)
#===============================================================================
# 点击文章管理
#===============================================================================
ie.navigate(dict["article-url"])
#===============================================================================
# 点击写文章
#===============================================================================
mainFrame = ie.getFrame('main')
pwindow = mainFrame.document.parentWindow
pwindow.execScript('NewArticle()')
#===============================================================================
# 设置文章标题,文章分类,系统分类,文章类型
#===============================================================================
mainFrame = ie.getFrame('main')
doc = mainFrame.document
#------------------------------------------------------------------------ 设置文章标题
doc.getElementById('blog_title').value = dict['title']
#------------------------------------------------------------------------ 文章分类-java
doc.getElementById('frmid').value = '119124'
#------------------------------------------------------------------------ 系统分类-java
doc.getElementById('systemfrmid').value = '20'
#----------------------------------------------------------------------- 文章类型-原创
doc.getElementById('arttype').value = dict['arttype']
#===============================================================================
# 填写文章内容
#===============================================================================
pwindow = mainFrame.document.parentWindow
pwindow.execScript('InsertHTML("Python+PAMIE")')
pwindow.execScript('InsertHTML("如此强大的功能")')
#===============================================================================
# 发表文章
#===============================================================================
pwindow.execScript('savearticle()')

 
运行效果(发布演示文章过程中,无任何鼠标键盘交互!)
 
注意:本文纯属技术演示,其目的方便广大博主开发个人便利的博客辅助工具。任何人不得利用本人原代码以类似广告群发为目的的再次开发!ChinaUnix为大家提供了一个极其优秀的技术共享平台,我们每个人都有义务维护其良好的秩序!

阅读(1476) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~