HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2012
0116
タカチン受信メールから自動的に名前や住所を抜き出したい8解決


タカチン

リンク

2012/1/16(Mon) 14:37:08|NO.44323

受信メールから自動的に名前や住所を抜き出して、textまたはexcel形式で利用したいのですが、
見本となるようなものがあればソース等を参考にしたいのですが、教えて下さい。
ちなみに、私はhspは簡単なプログラムを10本ほど作ったことがあるpgレベルです



この記事に返信する


skyblue

リンク

2012/1/16(Mon) 18:37:36|NO.44329

>受信メールから自動的に名前や住所を抜き出して、textまたはexcel形式で利用したい・・
はっきり言って難しい。
サーバからメールを取得して、ヘッダーを解析してtextメールだったら
本文をそのままデコードして解析、名前と住所を探してnotesaveで保存。
htmlメールの場合は他の人に任せます。



XBG|YAMANOTE231103(PC)

リンク

2012/1/16(Mon) 18:47:22|NO.44331

HTMLの場合、正規表現("<[^>]+>"←かな)でタグを除去すればテキストにできる。



タカチン

リンク

2012/1/16(Mon) 21:11:47|NO.44341

skyblueさん
XBGさん    返事ありがとうございます
HSPアシスタントも見ているのですが、サーバーからメールを取り出すところからわからないので
私のレベルが低すぎですかね、
("名前:"の後に名前が存在する仕様にすれば、文字列を取り出す程度はできるのですが)
なにかヒントがあれば嬉しいのですが。(HSPアシスタントの参照場所とか、他の人のHPとか)



XBG|YAMANOTE231103(PC)

リンク

2012/1/16(Mon) 21:18:54|NO.44345

そこら辺は考えられるパターンを搭載して、認識するしかないでしょうねぇ。住所以外は。
何しろ名前だけばーんっって書いていても、コンピュータにとってはただのテキスト同然だし。

メールサーバとしてはPOP3が多いと思いますが、何しろPOP3は簡単にメールを取得できないもので…
取得にはソケット通信が必要ですね。hspsockとかで大丈夫かな?
↓C#だけど参考までに
http://dobon.net/vb/dotnet/internet/receivepop3mail.html



タカチン

リンク

2012/1/17(Tue) 10:44:56|NO.44358

ありがとうございました。結局実力不足であきらめることにします。
メール文を手でコピーとペーストしてあとは文字抜き出します。
ちなみに種類はtxtメールの場合のみです



skyblue

リンク

2012/1/17(Tue) 19:29:00|NO.44364

textメールの場合だったら
サーバーに接続して
ユーザー名、パスワードを順番に送信後、応答メッセージを解析するか
STATを送信してメールメッセージ数を取得
その後、TOPを送信して、ヘッダーを取得して
Content-Typeヘッダーのtext/plain文字列を検索し
存在していたらRETRでメッセージを全て取得して
JISからSJISへと変換する必要が大抵はあります。
(Content-Typeヘッダーに文字コードが書かれています)
その後、名前と住所の文字列をそれぞれ検索してnote系命令で書き出し
名前と住所の文字列を必ず含める必要がありますが
名前と住所などの項目名が入っていれば、1行でも5000行でも可能です。
名前や住所以外の項目名も可能です。



skyblue

リンク

2012/1/17(Tue) 19:31:59|NO.44365

ついしん(書き忘れ)
その後、メッセージ数分繰り返した後、QUITの文字列を送信後接続を切断すればできます。



タカチン

リンク

2012/1/18(Wed) 15:10:39|NO.44380

skyblueさん ありがとうございました。
可能性あり ということでもう少し勉強してみます

定型文に 必要項目を自動で入れて送信することは
hspinetのtest1を利用してできるようなのですが受信は自信△です(笑)



ONION software Copyright 1997-2021(c) All rights reserved.