================================================================================PY
Content-Type: multipart/mixed; boundary="===============0152565430=="
MIME-Version: 1.0
From: PP4E@learning-python.com
To: PP4E@learning-python.com
Subject: hello from PyMailCGI
Date: Sat, 19 Jun 2010 21:09:00 -0000
X-Mailer: PyMailCGI 3.0

A multi-part MIME format message.

--===============0152565430==
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit

Sending this from PyMailCGI.  The mail goes from the web browser client, to 

the HTTP web server (running locally on the same machine), to the Python CGI

script, and finally to the SMTP email server at my ISP before being delivered.

When later fetched in PyMailCGI, it goes from ISP POP server, to CGI script, 

and back to the browser client.  The HTTP server and CGI script intermediate

steps are not present when using the PyMailGUI "desktop" client program.

 

Thanks,

--Mark Lutz  (http://learning-python.com, http://rmi.net/~lutz)


--===============0152565430==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="README-imports.txt"

Tm90ZTogaW4gdGhlIGJvb2ssIHRoZSBleGFtcGxlIHRpdGxlcyBvZiBpbXBvcnRlZCBtb2R1bGUg
ZmlsZXMNCmdpdmUgdGhlaXIgcGF0aHMgYXMgY2dpLWJpbi8sIG5vdCB0aGlzIGRpcmVjdG9yeSwg
YW5kIHRoaXMgaXMNCmh3IHRoZSBleGFtcGxlcyBhcmUgc2hpcHBlZDogYWxsIG1vZHVsZXMgYXJl
IGluIGNnaS1iaW4vIGFsb25nIA0Kd2l0aCB0aGUgQ0dJIHNjcmlwdHMgdGhhdCB1c2UgdGhlbS4g
IFRoaXMgbGF0dGVyIHN0cnVjdHVyZSBpcyANCm1vcmUgcG9ydGFibGUsIGJlY2F1c2UgQ0dJIHNj
cmlwdHMgc3Bhd25lZCBhcyBwcm9jZXNzZXMgb24gbW9zdA0KcGxhdGZvcm1zIHdpbGwgaGF2ZSB0
aGVpciBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IHNldCB0byBjZ2ktYmluLw0KZm9yIGltcG9y
dHMuICBUaGlzIGluY2x1ZGVzIHRoZSBQeXRob24tY29kZWQgd2ViIHNlcnZlciBvZiB0aGUgYm9v
aw0Kd2hlbiBydW5uaW5nIG9uIFdpbmRvd3Mu

--===============0152565430==
Content-Type: text/x-python; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="onEditPageSend.py"

IyEvdXNyL2Jpbi9weXRob24NCiIiIg0KIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCk9uIHN1Ym1p
dCBpbiBlZGl0IHdpbmRvdzogZmluaXNoIGEgd3JpdGUsIHJlcGx5LCBvciBmb3J3YXJkOw0KDQpp
biAyLjArLCB3ZSByZXVzZSB0aGUgc2VuZCB0b29scyBpbiBtYWlsdG9vbHMgdG8gY29uc3RydWN0
IGFuZCBzZW5kIHRoZSBtZXNzYWdlLA0KaW5zdGVhZCBvZiBvbGRlciBtYW51YWwgc3RyaW5nIHNj
aGVtZTsgIHdlIGFsc28gaW5oZXJpdCBhdHRhY2htZW50IHN0cnVjdHVyZQ0KY29tcG9zaXRpb24g
YW5kIE1JTUUgZW5jb2RpbmcgZm9yIHNlbnQgbWFpbHMgZnJvbSB0aGF0IG1vZHVsZTsNCg0KMy4w
OiBDR0kgdXBsb2FkcyBmYWlsIGluIHRoZSBweTMuMSBjZ2kgbW9kdWxlIGZvciBiaW5hcnkgYW5k
IGluY29tcGF0aWJseS1lbmNvZGVkIA0KdGV4dCwgc28gd2Ugc2ltcGx5IHVzZSB0aGUgcGxhdGZv
cm0gZGVmYXVsdCBoZXJlIChjZ2kncyBwYXJzZXIgZG9lcyBubyBiZXR0ZXIpOw0KMy4wOiB1c2Ug
c2ltcGxlIFVuaWNvZGUgZW5jb2RpbmcgcnVsZXMgZm9yIG1haW4gdGV4dCBhbmQgYXR0YWNobWVu
dHMgdG9vOw0KIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCiIiIg0KDQppbXBvcnQgY2dpLCBzeXMs
IGNvbW1vbmh0bWwsIG9zDQpmcm9tIGV4dGVybnMgaW1wb3J0IG1haWx0b29scw0KDQpzYXZlZGly
ID0gJ3BhcnRzdXBsb2FkJw0KaWYgbm90IG9zLnBhdGguZXhpc3RzKHNhdmVkaXIpOg0KICAgIG9z
Lm1rZGlyKHNhdmVkaXIpDQoNCmRlZiBzYXZlQXR0YWNobWVudHMoZm9ybSwgbWF4YXR0YWNoPTMs
IHNhdmVkaXI9c2F2ZWRpcik6DQogICAgIiIiDQogICAgc2F2ZSB1cGxvYWRlZCBhdHRhY2htZW50
IGZpbGVzIGluIGxvY2FsIGZpbGVzIG9uIHNlcnZlciBmcm9tIA0KICAgIHdoaWNoIG1haWx0b29s
cyB3aWxsIGFkZCB0byBtYWlsOyAgdGhlIDMuMSBGaWVsZFN0b3JhZ2UgcGFyc2VyIA0KICAgIGFu
ZCBvdGhlciBwYXJ0cyBvZiBjZ2kgbW9kdWxlIGNhbiBmYWlsIGZvciBtYW55IHVwbG9hZCB0eXBl
cywNCiAgICBzbyB3ZSBkb24ndCB0cnkgdmVyeSBoYXJkIHRvIGhhbmRsZSBVbmljb2RlIGVuY29k
aW5ncyBoZXJlOw0KICAgICIiIg0KICAgIHBhcnRuYW1lcyA9IFtdDQogICAgZm9yIGkgaW4gcmFu
Z2UoMSwgbWF4YXR0YWNoKzEpOg0KICAgICAgICBmaWVsZG5hbWUgPSAnYXR0YWNoJWQnICUgaQ0K
ICAgICAgICBpZiBmaWVsZG5hbWUgaW4gZm9ybSBhbmQgZm9ybVtmaWVsZG5hbWVdLmZpbGVuYW1l
Og0KICAgICAgICAgICAgZmlsZWluZm8gPSBmb3JtW2ZpZWxkbmFtZV0gICAgICAgICAgICAgICAg
ICAgICAjIHNlbnQgYW5kIGZpbGxlZD8NCiAgICAgICAgICAgIGZpbGVkYXRhID0gZmlsZWluZm8u
dmFsdWUgICAgICAgICAgICAgICAgICAgICAgIyByZWFkIGludG8gc3RyaW5nDQogICAgICAgICAg
ICBmaWxlbmFtZSA9IGZpbGVpbmZvLmZpbGVuYW1lICAgICAgICAgICAgICAgICAgICMgY2xpZW50
J3MgcGF0aG5hbWUNCiAgICAgICAgICAgIGlmICdcXCcgaW4gZmlsZW5hbWU6DQogICAgICAgICAg
ICAgICAgYmFzZW5hbWUgPSBmaWxlbmFtZS5zcGxpdCgnXFwnKVstMV0gICAgICAgICMgdHJ5IERP
UyBjbGllbnRzDQogICAgICAgICAgICBlbGlmICcvJyBpbiBmaWxlbmFtZToNCiAgICAgICAgICAg
ICAgICBiYXNlbmFtZSA9IGZpbGVuYW1lLnNwbGl0KCcvJylbLTFdICAgICAgICAgIyB0cnkgVW5p
eCBjbGllbnRzDQogICAgICAgICAgICBlbHNlOg0KICAgICAgICAgICAgICAgIGJhc2VuYW1lID0g
ZmlsZW5hbWUgICAgICAgICAgICAgICAgICAgICAgICAjIGFzc3VtZSBkaXIgc3RyaXBwZWQNCiAg
ICAgICAgICAgIHBhdGhuYW1lID0gb3MucGF0aC5qb2luKHNhdmVkaXIsIGJhc2VuYW1lKQ0KICAg
ICAgICAgICAgaWYgaXNpbnN0YW5jZShmaWxlZGF0YSwgc3RyKTogICAgICAgICAgICAgICAgICAj
IDMuMDogcmIgbmVlZHMgYnl0ZXMNCiAgICAgICAgICAgICAgICBmaWxlZGF0YSA9IGZpbGVkYXRh
LmVuY29kZSgpICAgICAgICAgICAgICAgIyAzLjA6IHVzZSBlbmNvZGluZz8NCiAgICAgICAgICAg
IHNhdmVmaWxlID0gb3BlbihwYXRobmFtZSwgJ3diJykNCiAgICAgICAgICAgIHNhdmVmaWxlLndy
aXRlKGZpbGVkYXRhKSAgICAgICAgICAgICAgICAgICAgICAgIyBvciBhIHdpdGggc3RhdGVtZW50
DQogICAgICAgICAgICBzYXZlZmlsZS5jbG9zZSgpICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICMgYnV0IEVJQlRJIHN0aWxsDQogICAgICAgICAgICBvcy5jaG1vZChwYXRobmFtZSwgMG82
NjYpICAgICAgICAgICAgICAgICAgICAgICMgbmVlZCBmb3Igc29tZSBzcnZycw0KICAgICAgICAg
ICAgcGFydG5hbWVzLmFwcGVuZChwYXRobmFtZSkgICAgICAgICAgICAgICAgICAgICAjIGxpc3Qg
b2YgbG9jYWwgcGF0aHMNCiAgICByZXR1cm4gcGFydG5hbWVzICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIyBnZXRzIHR5cGUgZnJvbSBuYW1lDQoNCiNjb21tb25odG1sLmR1
bXBzdGF0ZXBhZ2UoMCkNCmZvcm0gPSBjZ2kuRmllbGRTdG9yYWdlKCkgICAgICAgICAgICAgICAg
ICAgICAgIyBwYXJzZSBmb3JtIGlucHV0IGRhdGENCmF0dGFjaGVzID0gc2F2ZUF0dGFjaG1lbnRz
KGZvcm0pICAgICAgICAgICAgICAgIyBjZ2kucHJpbnRfZm9ybShmb3JtKSB0byBzZWUNCg0KIyBz
ZXJ2ZXIgbmFtZSBmcm9tIG1vZHVsZSBvciBnZXQtc3R5bGUgVVJMDQpzbXRwc2VydmVybmFtZSA9
IGNvbW1vbmh0bWwuZ2V0c3RhbmRhcmRzbXRwZmllbGRzKGZvcm0pDQoNCiMgcGFybXMgYXNzdW1l
ZCB0byBiZSBpbiBmb3JtIG9yIFVSTCBoZXJlDQpmcm9tIGNvbW1vbmh0bWwgaW1wb3J0IGdldGZp
ZWxkICAgICAgICAgICAgICAgICMgZmV0Y2ggdmFsdWUgYXR0cmlidXRlcw0KRnJvbSA9IGdldGZp
ZWxkKGZvcm0sICdGcm9tJykgICAgICAgICAgICAgICAgICAjIGVtcHR5IGZpZWxkcyBtYXkgbm90
IGJlIHNlbnQNClRvICAgPSBnZXRmaWVsZChmb3JtLCAnVG8nKQ0KQ2MgICA9IGdldGZpZWxkKGZv
cm0sICdDYycpDQpTdWJqID0gZ2V0ZmllbGQoZm9ybSwgJ1N1YmplY3QnKQ0KdGV4dCA9IGdldGZp
ZWxkKGZvcm0sICd0ZXh0JykNCmlmIENjID09ICc/JzogQ2MgPSAnJw0KDQojIDMuMDogaGVhZGVy
cyBlbmNvZGVkIHBlciB1dGY4IHdpdGhpbiBtYWlsdG9vbHMgaWYgbm9uLWFzY2lpDQpwYXJzZXIg
PSBtYWlsdG9vbHMuTWFpbFBhcnNlcigpDQpUb3MgPSBwYXJzZXIuc3BsaXRBZGRyZXNzZXMoVG8p
ICAgICAgICAgICAgICAgICMgbXVsdGlwbGUgcmVjaXAgbGlzdHM6ICcsJyBzZXB0DQpDY3MgPSAo
Q2MgYW5kIHBhcnNlci5zcGxpdEFkZHJlc3NlcyhDYykpIG9yICcnDQpleHRyYUhkcnMgPSBbKCdD
YycsIENjcyksICgnWC1NYWlsZXInLCAnUHlNYWlsQ0dJIDMuMCcpXQ0KDQojIDMuMDogcmVzb2x2
ZSBtYWluIHRleHQgYW5kIHRleHQgYXR0YWNobWVudCBlbmNvZGluZ3M7IGRlZmF1bHQ9YXNjaWkg
aW4gbWFpbHRvb2xzDQpib2R5ZW5jb2RpbmcgPSAnYXNjaWknDQp0cnk6DQogICAgdGV4dC5lbmNv
ZGUoYm9keWVuY29kaW5nKSAgICAgICAgICAjIHRyeSBhc2NpaSBmaXJzdCAob3IgbGF0aW4tMT8p
DQpleGNlcHQgKFVuaWNvZGVFcnJvciwgTG9va3VwRXJyb3IpOiAgICAjIGVsc2UgdXNlIHR1Zjgg
YXMgZmFsbGJhY2sgKG9yIGNvbmZpZz8pDQogICAgYm9keWVuY29kaW5nID0gJ3V0Zi04JyAgICAg
ICAgICAgICAjIHRiZDogdGhpcyBpcyBtb3JlIGxpbWl0ZWQgdGhhbiBQeU1haWxHVUkNCg0KIyAz
LjA6IHVzZSB1dGY4IGZvciBhbGwgYXR0YWNobWVudHM7IHdlIGNhbid0IGFzayBoZXJlDQphdHRh
Y2hlbmNvZGluZ3MgPSBbJ3V0Zi04J10gKiBsZW4oYXR0YWNoZXMpICAgICMgaWdub3JlZCBmb3Ig
bm9uLXRleHQgcGFydHMNCg0KIyBlbmNvZGUgYW5kIHNlbmQNCnNlbmRlciA9IG1haWx0b29scy5T
aWxlbnRNYWlsU2VuZGVyKHNtdHBzZXJ2ZXJuYW1lKQ0KdHJ5Og0KICAgIHNlbmRlci5zZW5kTWVz
c2FnZShGcm9tLCBUb3MsIFN1YmosIGV4dHJhSGRycywgdGV4dCwgYXR0YWNoZXMsDQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keXRleHRFbmNvZGluZz1ib2R5
ZW5jb2RpbmcsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0
YWNoZXNFbmNvZGluZ3M9YXR0YWNoZW5jb2RpbmdzKQ0KZXhjZXB0Og0KICAgIGNvbW1vbmh0bWwu
ZXJyb3JwYWdlKCdTZW5kIG1haWwgZXJyb3InKQ0KZWxzZToNCiAgICBjb21tb25odG1sLmNvbmZp
cm1hdGlvbnBhZ2UoJ1NlbmQgbWFpbCcp

--===============0152565430==
Content-Type: text/html; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="about-pp.html"

PEhUTUw+DQoNCjxIRUFEPg0KPFRJVExFPkFib3V0ICJQcm9ncmFtbWluZyBQeXRob24iPC9USVRM
RT4NCjwvSEVBRD4NCg0KPEJPRFkgQkdDT0xPUj0iI0ZGRkZGRiI+DQo8SDE+QWJvdXQgPEk+UHJv
Z3JhbW1pbmcgUHl0aG9uPC9JPjwvSDE+DQoNCjxIUj4NCjxJTUcgU1JDPSJvcmEtcHAzZS1zbWFs
bC5naWYiIEFMSUdOPW1pZGRsZSBBTFQ9IltCb29rIENvdmVyXSI+DQoNCjxQPg0KVGhlIGJvb2sg
dGl0bGUgPEk+UHJvZ3JhbW1pbmcgUHl0aG9uPC9JPiBpcyBhc3NvY2lhdGVkIHdpdGggDQpmb3Vy
IHZlcnkgZGlmZmVyZW50IGVkaXRpb25zLiAgVGhlIGZpcnN0IGVkaXRpb24gd2FzIGEgYnJvYWQN
CmludHJvZHVjdGlvbiB0byBib3RoIHRoZSBQeXRob24gbGFuZ3VhZ2UgYW5kIGNvbW1vbiBhcHBs
aWNhdGlvbnMNCm9mIGl0LiAgVGhlIHNlY29uZCBlZGl0aW9uIG9mIHRoaXMgYm9vayBpcyBhbiBh
bG1vc3QgY29tcGxldGVseSANCm5ldyBQeXRob24gYXBwbGljYXRpb25zIHByb2dyYW1taW5nIHRv
cGljcyB0ZXh0LCBhbmQgdGhlIHRoaXJkIA0KaXMgYSBoZWF2aWx5IHVwZGF0ZWQgYW5kIGV4cGFu
ZGVkIHZlcnNpb24gb2YgdGhlIHNlY29uZC4gIFRoZQ0KZm91cnRoIGlzIHBvcnQgdG8gcHl0aG9u
IDMuWCB3aXRoIHNvbWUgc3RydWN0dXJhbCBjaGFuZ2VzLg0KDQo8UD5UaGUgc2Vjb25kIHRocm91
Z2ggZm91cnRoIGVkaXRpb25zIG9mIHRoaXMgYm9vayBmb2N1cw0Kb24gY29tbW9uIGFwcGxpY2F0
aW9ucyBvZiB0aGUgbGFuZ3VhZ2UsIGFuZCBhc3N1bWUgeW91IGhhdmUgDQphbHJlYWR5IGxlYXJu
ZWQgdGhlIGxhbmd1YWdlIGl0c2VsZiBmcm9tIGEgZmlyc3QgYm9vayBzdWNoIA0KYXMgPEEgSFJF
Rj0iYWJvdXQtbHAuaHRtbCI+TGVhcm5pbmcgUHl0aG9uPC9BPi4gIFRoYXQgaXMsIA0KPEk+UHJv
Z3JhbW1pbmcgUHl0aG9uPC9JPiBpcyBhYm91dCB3aGF0IHlvdSBjYW4gPGk+ZG88L2k+IHdpdGgN
ClB5dGhvbiBhZnRlciB5b3UndmUgbWFzdGVyZWQgaXQsIGFuZCB0aHVzIGNvbnRhaW5zIGxhcmdl
ciBhbmQgDQptb3JlIGNvbXBsZXRlIGFuZCBhZHZhbmNlZCBleGFtcGxlcyB0aGFuIGludHJvZHVj
dG9yeSB0ZXh0cyBjYW4uDQpJdCdzIGRlc2lnbmVkIHRvIGJlIHVzZWQgYXMgdGhlIHNlY29uZCBp
biBhIDItYm9vayBzZXQsIGFzIGENCmZvbGxvdy11cCB0byA8ST5MZWFybmluZyBQeXRob248L0k+
LiBJdCdzIGFsc28gbWVhbnQgdG8gYmUgc3VwcGxlbWVudGVkDQpieSBhIHJlZmVyZW5jZSwgc3Vj
aCBhcyB0aGUgYm9vayA8ST5QeXRob24gUG9ja2V0IFJlZmVyZW5jZTwvST4uDQoNCjxQPg0KSSBt
YWludGFpbiBkaXN0aW5jdCBib29rIHN1cHBvcnQgd2ViIHBhZ2VzIGZvciBlYWNoIGVkaXRpb24u
IA0KUGxlYXNlIHNlbGVjdCB0aGUgcmVsZXZhbnQgd2ViIHBhZ2UgbGluayBiZWxvdywgYWNjb3Jk
aW5nIHRvDQp0aGUgYm9vayBlZGl0aW9uIHRoYXQgeW91IGFyZSBpbnRlcmVzdGVkIGluLg0KPC9Q
Pg0KDQo8VUw+DQo8TEk+DQo8QSBIUkVGPSJhYm91dC1wcDRlLmh0bWwiPg0KPEk+UHJvZ3JhbW1p
bmcgUHl0aG9uIDR0aCBFZGl0aW9uPC9JPiAoT2N0b2JlciAyMDEwKTwvQT4NCg0KPExJPg0KPEEg
SFJFRj0iYWJvdXQtcHAzZS5odG1sIj4NCjxJPlByb2dyYW1taW5nIFB5dGhvbiAzcmQgRWRpdGlv
bjwvST4gKEF1Z3VzdCAyMDA2KTwvQT4NCg0KPExJPg0KPEEgSFJFRj0iYWJvdXQtcHAyZS5odG1s
Ij4NCjxJPlByb2dyYW1taW5nIFB5dGhvbiAybmQgRWRpdGlvbjwvST4gKE1hcmNoIDIwMDEpPC9B
Pg0KDQo8TEk+DQo8QSBIUkVGPSJhYm91dC1wcDFlLmh0bWwiPg0KPEk+UHJvZ3JhbW1pbmcgUHl0
aG9uIDFzdCBFZGl0aW9uPC9JPiAoT2N0b2JlciAxOTk2KTwvQT4NCjwvVUw+DQoNCjxIUj4NCjxQ
Pg0KPEk+QmFjayB0byBteSA8QSBIUkVGPSJpbmRleC5odG1sIj5ob21lcGFnZTwvQT48L0k+PEJS
Pg0KPC9QPg0KDQo8L0JPRFk+DQo8L0hUTUw+DQo=

--===============0152565430==--
================================================================================PY
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
From: PP4E@learning-python.com
To: lutz@learning-python.com
Subject: testing sendurl.py
Date: Sat, 19 Jun 2010 21:30:39 -0000
X-Mailer: PyMailCGI 3.0

But sir, it's only wafer-thin...
