• 注意:これは、Pascal語によるプログラムの基礎講座です。
  • 今回の最終目的は、メールアドレス検索ロボットに対するゲリラ活動です。あなたのサイトにも1000個単位でウソメールアドレスをupしてください。完成品も配布しています(このページの最後の方)。

乱数で遊ぼう Visitor No. - : - : -

  • http://japan.cnet.com/に「半数の人が間違ったスパム対策をしている」--シマンテック調査ということで引用ですが、
    • 間違ったスパム対策を行っている人が多いことも明らかになった。メールに書かれたURLにアクセスし、拒否の意向を伝える人が24.6%、メール内にある宛先に拒否する旨を書いたメールを送る人が21.9%いるという。「これらの方法はアドレスが実際に利用されているものだと相手にわかってしまうので、絶対にやってはいけないことだ」(インフォプラント カスタマーサポート部 カスタマーサポートグループ マーケティングリサーチャーの松澤治光氏)」
  • と、記載されていたんですが、メールが配達不能でない限りそのアドレスは実在するわけですから、LISTから削除されることなく、拒否の意向を伝えるか否かによって結果が変わるとは思えませんが.....
  • たとえば、ここの@wikiなんかの管理者へのメールなら、検索ロボットに引っかからないでしょうが、検索ロボットは、金属の装甲を持ったロボットがパソコンの画面を見ながら検索していると思っている人もいます。
  • 本人は隠したつもりのようですが
  • メニューの「表示(V)」の「ソース(c)」を選択すると簡単に見ることができます。
  • このネット世界にいるロボットは@マークを頼りにメールアドレスを検索収集すると言います。ロボットといっても鉄でできた形があるのではなく、プログラムです。あちこちのサイトにそれらしい xxx@xx.xxx.jp なんてのがい~~~~~~~~~~~~っぱい載ってたらどうするのでしょうか? ちゃんと収集して行ってくれるのでしょうか? 私の職場で使っているメールアドレスには、1日40~50通のDMに混じって2日に1通は空のDMが着ます。これは、多分メールアドレスが実在しているか確認作業を行っているプログラムによるものと考えます。
  • ってなわけで、乱数で、一度に1000個の「うそ」メールアドレスを作って、みんなで、自分のサイトに掲載してはどうかと思うわけです。当然のことながら、定期的に更新して新しい「うそ」アドレスを乗せるわけです。自分のサイトを持っていてDMに迷惑しているみなさん、ぜひこのロボットに対するゲリラ活動にご協力を!
  • Uso-mail? こんな感じになりますね。

お尻の部分から構造を考えよう

  • 簡単な部分からはじめたほうが取っ掛かり易いし、決めやすい部分の条件にしたがって、決めにくい部分を決定するほうが楽だと思います。
  • 最後は、jpみたいな国を示すものや、com, net, orgなどあります。全部で10個用意しましょう。uk, us, tw, ch, ru, frなんてあたりでどうでしょうか。
  • 最後が国の場合は、その手前がパターン化されているものもあります。co, ac, ne, or, goのようなもの。また、atwiki.jpみたいにいきなり3文字以上のものが来る場合もあります。
  • まず最後を決めます。
  • 最後が2文字の時には、3分の2が手前にco, ac, ne, or, goがくるとしましょう。
  • 次は会社名にあたる部分です。3~7文字のアルファベットを適当に組み合わせることにしましょう。
  • 以前は会社名の前に@だったのですが、最近は利用者が増えたせいで、neやorの場合は、もう1つ挟まっています。2~5文字の部分です。
  • @
  • 個人名と言う順番です。個人名は5文字から8文字-_後ろ1つ2つは数字をいれてもよいでしょうか.......
  • htmlの形式にしてその日付のファイル名で保存ってとこでしょうか....
  • atwiki.jpのwikiモードエディター用も作成しましょう。

では、準備をしましょう

  • 新しいProjectを用意して、formには、Memo 1個(ScrollBarの設定はBoth)、Edit 1個、Button 3個、ちょっと気分でProgressBar 1個用意しましょう。
  • まずは終了ボタンを設定しましょう。何で2番目かって、まぁ適当にその辺は.....
  • 次に起動時の設定をします...ですが、その前に....
    • このソフトの目的からいって月に1回程度更新すればゲリラ活動としては、検索ロボットの妨害工作になるでしょうから、作成した日付のファイル名で保存することにします。
    • しかし、Pascalで日付を文字列にして取り出すと(書式DateToStr(Date))、2008/06/01みたいにスラッシュが入ってファイル名に使えませんので「-」ハイフンに置き換えましょう。
    • ところで、スラッシュといえば、まほろさんに出てきた黒豹ロボット、ロデムと同じ野田圭一さんだったかが声をやってて、ビビル2世を思い出しました。主人公の古見浩一くんですが、ビビルの塔にいると、正義の味方の高校生のくせに、ロデムをお姉さんに化けさせて傍に侍らせておく...ってのは、ちょっと問題があるんではないでしょうか。余談ですが.....
    • /を2個-に置き換えるので、専用の関数を作っちゃいましょう。
  • 改めて起動時の設定
    • 起動時にMemo1を空に、irekae関数は、二重に入れ子になっているので日付がEdit1に「2008-06-01」で入力された状態で起動します。これが出来上がるファイル名になります。
    • Randomize これを忘れると起動するたびに、全く同じ数の同じ順番で乱数を発生させます。乱数には元になる種があって、その種を変更する手続きです。
#ref error :ご指定のファイルが見つかりません。ファイル名を確認して、再度指定してください。 (im0-2.GIF)
  • さて、ここからが、本体のプログラムです。今回は、「.」で区切られた部分を部分ごとに発生させる関数を作りましょう。
  • まず、最後の部分です。その国名の数は適当にしてください。
  • 前述の国名の手前にくる種類別です。最後の部分と同じ発想のProgramでOKですね。
  • 今度は、会社名と、プロバイダーに多いもう1つの項目です。この2つは、共通のプログラムでやってしまいましょう。
  • damって文字列変数は一時的なダミーなので、私はいつもこの名前にしています。Pascalはじめたのが、1984か5年ごろ1990年ごろには、自分だけの関数名のつけ方が習慣化してた様に思います。
  • ここまでは、それほどややこしいモノでもありませんでしたが、IDになる部分は、-_数字などが入ってきます。初期のネットのIDのようにabc12345のような配列でもいいんですが、練習として、ややこしいものを作らないと意味がありません。いろいろ悩んだんですが、良くわかりません。最終的に、末尾に1-2桁つける数字から始めることにしました。
    • まずrは、case of が終わる次の行までは、末尾の数字の桁数にして、その後、役目の終了と共にリサイクル、nはalphabetと-_の部分の桁数、fは、フラグです。フラグなら真偽変数にすべきところですが、長い習慣で、また、1と0だけでなく-1を入れたりすることもたまにあるので、整数のフラグです。最初は0-_が入ると1にして、再度-_が入るのを防ぎます。
    • for以下のところでifが3行続きます。
    • 1番目は、-_が使用されたかどうかを判定して、選択肢に-_を入れるかどうか決めます。
    • 2番目は、-_が名前部分の最初に来ないようにしています。
    • 3番目は、数字部分が発生しなかったときに-_で名前部分が終了するのを排除します。
  • さて、次はメールアドレス1個分の文字列を完成させましょう。
    • 「お尻の部分から構造を考えよう」の直後に私が考えた方法をそのままプログラムしたものです。@だけは、ちょっとちがいますが、読み比べてください。

ここまでせっせと作ってきた関数mail_adを使いましょう

  • まずは、Button1にHTMLファイルを生成する部分をつくりましょう。
  • ProgressBarのMaxを250に設定しておいてくださいね。
  • 4行ごとに改行<BR>を入力するようにしています。
  • 今度は、ここ@wiki用の書式を作りましょう。
  • @wikiモードでは、実際の改行がそのまま改行になるので、procedure内部にここだけで使用する関数を作り、1行に4つ作っていきます。

E-mail address記載上の注意と方法

  • (1) 画像で載せる、といっても、ややこしいデザインの文字がよいと思います。
    • 最近は、郵便番号のOCRの識字率のUPでもわかるように、Alphabetだと画像から読み取ることも可能だし、書き込みロボットによるブログ荒し対策のように書き込みの際に色覚検査のような画像からキー入力をする手続きができています。あんまり、ややこしくても、困りますが.....
    • #ref error :ご指定のファイルが見つかりません。ファイル名を確認して、再度指定してください。 (ads1.GIF)
    • 最低の条件でしょうか?、人間に読めても機械に読めない画像...そして変わったフォントで作る画像。
    • #ref error :ご指定のファイルが見つかりません。ファイル名を確認して、再度指定してください。 (ads3.GIF)
    • ポケモン好き以外の人からのメールは要りません...なら、森沢工房のアンノーンfontで作る画像など。
    • #ref error :ご指定のファイルが見つかりません。ファイル名を確認して、再度指定してください。 (ads2.GIF)
  • (2) 全角文字を利用する違う記号を表示する+注意書きの方法
    • morisawa@koubou.com(@を半角にしてください)
    • morisawa☆koubou.com(☆を半角@にしてください)
    • morisawa/at/koubou.com(/at/を@にしてください)
  • (3) (1)(2)で紹介した方法では、検索ロボットに認識されません。そこで、検索ロボットに対する妨害工作として以下の方法をとる人もいます。
  • 以上のような方法で掲載しましょう。




最終更新:2009年10月30日 23:09