Python総合学習【活用編】

Excel操作
Excelに文字列を入力する処理について解説します。
ソース
#coding: shift_jis
import win32com.client
objXLS = win32com.client.Dispatch("Excel.Application")
objBook = objXLS.Workbooks.Add()
strFileName= "C:\\Users\\home\\Desktop\\Excel.xlsx"
objBook.SaveAs(strFileName)
objBook = objXLS.Workbooks.Open(strFileName)
objBook.Worksheets(1).Cells(1,1).Value = "Python"
objBook.Save()
objBook.Close()
objXLS.Quit()
Excel.Application
Excel操作に使用するオブジェクト
オブジェクト.WorkBooks.Add()
Excelブックを新規作成します。
オブジェクト.SaveAs(ファイル名)
Excelブックに名前を付けて保存します。
オブジェクト.WorkBooks.Open(ファイル名)
ファイル名を指定してExcelブックを開きます。
オブジェクト.Worksheets(インデックス).Cells(行,列)
左から1番目のシートのA1セルを指定します。
オブジェクト.Save()
Excelブックを上書き保存します。
オブジェクト.Close()
Excelブックを閉じます。
オブジェクト.Quit()
Excelを終了します。
Excel PDF変換
ExcelをPDF形式で出力する処理について解説します。
ソース
#coding: shift_jis
import win32com.client
objXLS = win32com.client.Dispatch("Excel.Application")
objBook = objXLS.Workbooks.Add()
strFileName= "C:\\Users\\home\\Desktop\\Excel.xlsx"
objBook = objXLS.Workbooks.Open(strFileName)
strPDFName= "C:\\Users\\home\\Desktop\\Excel.pdf"
objBook.ExportAsFixedFormat(0, strPDFName)
objBook.Close()
objXLS.Quit()
オブジェクト.ExportAsFixedFormat(出力形式,ファイル名)
出力形式
0 : PDF形式
1 : XPS形式
ExcelブックをPDF形式/XPS形式で出力します。
メール送信
メールを送信する処理について解説します。
ソース
#coding: shift_jis
import win32com.client
objMsg = win32com.client.Dispatch("CDO.Message")
objMsg.From = 差出人アドレス
objMsg.To = 宛先アドレス
objMsg.Subject = "タイトル"
objMsg.TextBody = "メッセージ"
strConf="http://schemas.microsoft.com/cdo/configuration/"
objFields = objMsg.Configuration.Fields
objFields(strConf+"sendusing").Value = 2
objFields(strConf+"smtpserver").Value = "smtp.gmail.com"
objFields(strConf+"smtpserverport").Value = 465
objFields(strConf+"smtpauthenticate").Value = 1
objFields(strConf+"smtpusessl").Value = "true"
objFields(strConf+"sendusername").Value = アカウント
objFields(strConf+"sendpassword").Value = パスワード
objFields.Update()
objMsg.Send()
CDO.Message
メール送信に使用するオブジェクト
オブジェクト.Send()
メールを送信します。
Webデータ収集
InternetExplorerを利用して、Webサイトのデータを収集する処理について解説します。
ソース
# coding: shift_jis
import win32com.client, time
objIE=win32com.client.DispatchEx("InternetExplorer.Application")
objIE.Visible = False
objIE.Navigate("https://www.google.co.jp")
time.sleep(1)
objIE.Document.getElementsByName("q")[0].Value="Python"
objIE.Document.getElementsByName("btnK")[0].click()
time.sleep(1)
colResult = objIE.Document.Body.getElementsByTagName("h3")
for col in colResult:
print(col.textContent)
objIE.Quit()
input()
InternetExplorer.Application
IE操作に使用するオブジェクト
オブジェクト.Visible
IEを非表示にします。
オブジェクト.Navigate(URL)
指定したURLをIEに表示します。
オブジェクト.Document.getElementsByName(name属性値)
指定したname属性の要素を取得します。