python3下的IE自动化模块PAMIE

PAMIE是Python下面的用于IE的自动化模块,支持python2和python3,python3的下载地址:http://sourceforge.net/projects/pamie/files/PAMIE/PAM3.0%20for%20Python%203.0/
PAMIE是Python Automated Module for I.E. 的缩写。
 
简单的例子:
# To use Pamie you must first create a new script or text file that you can saveas mytest.py. 
# This will import the cPAMIE class file so you can use it's methods 
from cPAMIE import PAMIE 
# create a new instance of the PAMIE object 
ie = PAMIE( ) 
# Lets navigate to google - this methods takes a string as the URL 
ie.Navigate("'www.google.com" ) 
ie.textBoxSet("q", "python" ) #control name, value 
# Now Submit the form. 
ie.buttonClick("'btnG" ) 

      但是我们实际使用中,实际上会碰到许多的控件。如,input ,radio ,checkbox.

下面针对不同控件给出函数列表, 大家看名字大概就应该明白是干什么的. 权当手册使用吧,呵呵 :

状态控制
       实际应用中,需要考虑IE的状态,比如访问一个网页,随即进行操作,在网页未下载完成的情况下,容易出错
       PAMIE 则考虑到下面的情况     
  1. _wait()  : 等待整个页面下载完成
  2. _frameWait() :  等待一个frame下载完成
  3. _docGetReadyState:  获取文档对象的状态
复制代码

TextArea
  1. getTextArea (name):  获取一个textarea,可能使用 id,name 或者 index
  2. getTextAreaValue(name, attribute):  获取一个textarea的属性值
  3. getTextAreasValue() 获取所有textarea
  4. setTextArea(name): 给textarea赋值
  5. textAreaExists(name): 查看指定名称的textarea 是否存在
复制代码

Input
  1. getTextBox(name):
  2. getTextBoxValue(name, attribute):
  3. getTextBoxes():
  4. getTextBoxesValue()
  5. setTextBox( name, value):
  6. getInputElements():
复制代码

Button
  1. buttonExists(self, name):  检查一个button是否存在
  2. clickButton(self, name):  点击一个按钮, name 可以是 name,id,index甚至是value属性的值
  3. clickButtonImage(self, name):  同上,点击一个图片按钮
复制代码

Radio
  1. getRadioButton(name):
  2. def getRadioButtonSelected(name):
  3. getRadioButtonValues(name):
  4. getRadioButtons():
复制代码

CheckBox
  1. checkBoxExists(self, name): 检查一个单选框是否存在
复制代码

ListBox
  1. getListBox(name):
  2. getListBoxItemCount(name):
  3. getListBoxOptions(name):
  4. getListBoxSelected(name):
  5. getListBoxValue(name, attribute):
  6. listBoxUnSelect(name, value):
  7. selectListBox(name, value):
复制代码

Image
  1. getImage( name):
  2. getImageValue(name, attribute):
  3. getImages():
  4. getImagesValue( attribute):
  5. imageExists(name):
复制代码

form
  1. formExists( name):
  2. getForm( name=None):
  3. getFormValue( name, attribute):
  4. getFormVisibleControlNames( name=None):
  5. getForms():
  6. getFormsValue( attribute):
复制代码

a
  1. clickHiddenLink( name):
  2. getLink( name):
  3. getLinkValue( name, attribute):
  4. getLinks( filter=None):
复制代码

table
  1. getTable( name):
  2. getTableData( name):
  3. getTableRowIndex( name, row):
  4. getTableText(tableName,rownum,cellnum, frameName=None):
  5. getTables( filter=None):
  6. tableCellExists( tableName, cellText):
  7. tableExists( name):
  8. tableRowExists( name, row):
复制代码

div
  1. divExists( name):
  2. getDiv( name):
  3. getDivValue( name, attribute):
  4. getDivs():
  5. getDivsValue( attribute):
复制代码

通用 Element
  1. clickElement( element):  点击一个节点。
  2. clickHiddenElement( element):
  3. findElement( tag, attributes, val, elementList=None):
  4. findElementByIndex( tag, indexNum, filter=None, elementList=None):
  5. findText( text):
  6. fireElementEvent( tag, controlName, eventName):
  7. textFinder(text):
  8. getElementChildren( element, all=True):
  9. getElementParent( element):
  10. getElementValue( element, attribute):
  11. getElementsList( tag, filter=None, elementList=None):
复制代码

操作类函数:
      用于控制IE的动作
  1. navigate( url):
  2. changeWindow( wintext):  转而控制另外一个窗体对象
  3. pause( string = "Click to Continue test"):
  4. goBack(self):
  5. findWindow( title, indexNum=1):
  6. closeWindow( title=None):
  7. refresh(self):
  8. resize( iWidth, iHeight):
  9. quit(self):
复制代码

信息资源类:
       获取当前IE的属性
  1. getIE(self):
  2. getPageText(self):
  3. locationURL(self):
  4. outerHTML(self):
  5. randomString( length):
复制代码

最后给大家奉上 Win32Com, PAM30
posted @ 2011-12-17 16:10  方倍工作室  阅读(2847)  评论(0编辑  收藏  举报