例えばWEBフォームからの申し込みがあるとき、申込一覧を作成したいときなどです
メールが数件なら、目で見ながらEXCELに転記すればいいですが、数が多くなると大変です。
通常は、google form,microsoft formsなどを使って申し込みフォームを作成すれば、結果はスプレッドシートやexcelに自動で取り込めます。
しかし、無料のホームページなどで申し込みを作ると、申し込みは指定されたメールアドレスに送られます。
自動処理はできないですね。
さあ、ちょっとしたプログラミングや工夫で解決できます
pythonでプログラミングをしてみます。
windowsではストアからpythonをダウンロードできます

■ステップ1 ホームページ
jimdoでホームページを作り、申込フォームを作成します
メールアドレスはgmailとします
申し込みはgmailに送られます
■ステップ2 GMAILをダウンロード
gmailを開いて、該当のメールをすべて選択します
新規メールを作成、あて先は自分
選択したメールを本文にドロップ
表題を設定して送信
受信したメールを開いて、右クリック
メッセージをダウンロード、名前はtest.emlにします
■ステップ3 pythonプログラム作成
ひな形のプログラムで、抽出する項目を設定します
項目は「項目名:情報」の形式で保存されているとします
ここで項目は「お名前name、電話tel、住所address、email」とします
適時黒字部分を修正してください
#-----------------------------------------
if (u"お名前name" in str(line)):
name=check(u"お名前name",line)
print(name)
n=n+1
if (u"電話tel" in str(line)):
tel=check(u"電話tel",line)
n=n+1
if (u"住所address" in str(line)):
address=check(u"住所address",line)
n=n+1
if (u"email" in str(line)):
email=check(u"email",line)
n=n+1
if n==4:
output(f"{name},{email},{address},{tel}\n")
n=0
name=""
email=""
address=""
tel=""
#-----------------------------------------
■ステップ4 実行
フォルダーを作り、test.emlとpythonプログラムを入れます。
アドレス欄に「cmd」と入力して、コマンドプロンプトを開きます
コマンドプロンプト画面に「python Getdatafromemail.py」と入力してpythonプログラムを実行します
output.csv に抽出された情報が出力されます
クリックするとexcelが開きます
ちょっとしたプログラミングができると、便利なことが増えます
# coding: utf-8
import imaplib
import email
import base64
import quopri
import glob
def output(w):
f = open("output.csv","a")
f.writelines(w)
f.close()
def check(s,d):
if s in d:
w=d.split(":")
return w[1]
return ""
filelist=glob.glob("test.eml")
for t in filelist:
w=""
flg=False
name=""
email=""
address=""
tel=""
f = open(t, 'r',encoding='iso2022_jp')
n=0
for l in f:
line=l.rstrip('\n')
#-----------------------------------------
if (u"お名前name" in str(line)):
name=check(u"お名前name",line)
print(name)
n=n+1
if (u"電話tel" in str(line)):
tel=check(u"電話tel",line)
n=n+1
if (u"住所address" in str(line)):
address=check(u"住所address",line)
n=n+1
if (u"email" in str(line)):
email=check(u"email",line)
n=n+1
if n==4:
output(f"{name},{email},{address},{tel}\n")
n=0
name=""
email=""
address=""
tel=""
#-----------------------------------------
f.close()
