Aspen Plus Automation in Python

Aspen Plus Automation Code in Python.
ap=AspenPlus()
ap.open_case(r'pfdtut.bkp')
ap.visible=1
print(ap.print_streams())
print(ap.print_blocks())
# ap.run()
print("done")
Test Code
# type 'pip install pypiwin32' to install if missing
import win32com.client

class AspenPlus(object):
    '''
        author : bshaoO
    '''
    def __init__(self,version=None):
        '''constructor'''
        if not bool(version):
            self.__ihapp = win32com.client.Dispatch('Apwn.Document')
        else:
            # {'V9':'35.0','V10':'36.0'}
            self.__ihapp = win32com.client.Dispatch('Apwn.Document.' + version)
    def open_case(self, path):
        self.__ihapp.InitFromArchive2(path,0)
        self.__ihRoot=self.__ihapp.Application.Tree
    def run(self):
        self.__ihapp.Run2()
    def find_node(self,path):
        return self.__ihRoot.FindNode(path)
    def print_streams(self):
        streams=[]
        node=self.find_node(r"\Data\Streams")
        for item in node.Elements:
            streams.append(item.Name)
        return tuple(streams)
    def print_blocks(self):
        blocks=[]
        node=self.find_node(r"\Data\Blocks")
        for item in node.Elements:
            blocks.append(item.Name)
        return tuple(blocks)

    @property
    def visible(self):
        return self.__ihapp.Visible
    @visible.setter
    def visible(self,value):
        ''' vale=0, 1 '''
        self.__ihapp.Visible=value
AP Class

猜你喜欢

转载自www.cnblogs.com/bshao/p/9100739.html