import win32comfrom win32com.client import Dispatch, constants w = win32com.client.Dispatch('Word.Application') # 或者使用下面的方法,使用啓動獨立的進程:# w = win32com.client.DispatchEx('Word.Application') # 後臺運行,不顯示,不警告w.Visible = 0 w.DisplayAlerts = 0 # 打開新的文件doc = w.Documents.Open( FileName = filenamein ) # worddoc = w.Documents.Add() # 建立新的文檔 # 插入文字myRange = doc.Range(0,0) myRange.InsertBefore('Hello from Python!') # 使用樣式wordSel = myRange.Select() wordSel.Style = constants.wdStyleHeading1# 正文文字替換w.Selection.Find.ClearFormatting() w.Selection.Find.Replacement.ClearFormatting() w.Selection.Find.Execute(OldStr, False, False, False, False, False, True, 1, True, NewStr, 2) # 頁眉文字替換w.ActiveDocument.Sections[0].Headers[0].Range.Find.ClearFormatting() w.ActiveDocument.Sections[0].Headers[0].Range.Find.Replacement.ClearFormatting() w.ActiveDocument.Sections[0].Headers[0].Range.Find.Execute(OldStr, False, False, False, False, False, True, 1, False, NewStr, 2) # 表格操做doc.Tables[0].Rows[0].Cells[0].Range.Text ='123123' worddoc.Tables[0].Rows.Add() # 增長一行 # 轉換爲htmlwc = win32com.client.constants w.ActiveDocument.WebOptions.RelyOnCSS = 1 w.ActiveDocument.WebOptions.OptimizeForBrowser = 1 w.ActiveDocument.WebOptions.BrowserLevel = 0 # constants.wdBrowserLevelV4 w.ActiveDocument.WebOptions.OrganizeInFolder = 0 w.ActiveDocument.WebOptions.UseLongFileNames = 1 w.ActiveDocument.WebOptions.RelyOnVML = 0 w.ActiveDocument.WebOptions.AllowPNG = 1 w.ActiveDocument.SaveAs( FileName = filenameout, FileFormat = wc.wdFormatHTML ) # 打印doc.PrintOut() # 關閉# doc.Close()w.Documents.Close(wc.wdDoNotSaveChanges) w.Quit()
**************************************************
python ACCESS編程
http://xinyu.blogbus.com/s46076/
由於使用的第三方組件用到python,因此須要瞭解python的數據庫操做。html
後來找到了方法,寫了以下的sample:python
import win32com.client數據庫
def db1():編程
print "Start db1." try: conn = win32com.client.Dispatch(r'ADODB.Connection') conn.Open('Provider=SQLOLEDB.1;Password=123456;Persist Security Info=True;User ID=sa;Initial Catalog=ECI-SERVICE;Data Source=10.240.4.135') rs = win32com.client.Dispatch(r'ADODB.Recordset') rs.Cursorlocation=3 rs.Open('select * from EBP_B_AS_ALERT',conn) rs.MoveFirst()windows
for x in range(rs.RecordCount): if rs.EOF: print "End of records" break else: print rs.Fields.Item(1).Value rs.MoveNext() rs.Close() conn.Close() except: print "Except, now."api
用的是win32com 的extension。Python2.2.3 自身不帶win32 extension,須要安裝win32all-162(win extensions).exe。ide
代碼比較簡單,惋惜沒有找到api,因此提供哪些方法只能在網上找。測試