kspeg-logo-v06-72

KSPEG版:GgoogleGroup2mailam

  • 文档属主: jessinio
  • 版本历史:
    • v0.5~090104 创立;ZoomQuiet 迁移到啄木鸟维基

gg迁移需求

内部啓用了maillist服务, 需要把过去的在googlegroups中的邮件迁移回公司内部.

分析

数据的回源

迁移指定的googlegroups本应该对指定的服务索取数据的, 但现在googlegroups不提供API级的解决方案.

对于此问题, 可见如下讨论URL:

就目前的情况分析, 相应的有其它三种解决:

  1. 对web页面抓取, 取出相应的数据
  2. 对RSS的定阅, xml的数据抓取
  3. gmail的Email邮件download.

前两条总体是: xml格式 -> email格式, 非常麻烦, 或者工作量较大.

走gmail路线可以直接取得email格式数据. 但存在缺点:

  • 邮件的不完整性

决定迁移采取gmail的路线

数据的组织

将googlegroups数据迁移到公司的maillist(具体为mailman软件), 可以走如下路线:

  1. email格式文件 -> MDA

  2. email格式文件 -> mailman的归递程序

这里都需要对从googlegroups得到的email格式文件(具体说是从gmail从得到)需要做如下工作:

  1. 对email文件的排序
  2. 对eamil文件的重新整理
    • 如果使用email格式文件 -> MDA的方法,那就需要先在maillist中增加邮件中From的地址, 否则maillist不接收的

    • 请把mailman的require_explicit_destination设置为False
  3. 对于email格式文件 -> mailman的归递程序, 需要为每份email文件伪造类似如下的一文件头字符串:

实际迁移方法

如下两部分使用到自个写的python脚本:

使用gmail的Email

如下是脚本的交互过程:

what can I do for you?
d/D: download email to localhost mbox format
s/S: send localhost mbox file to MDA
m/M: make mbox file which can be use be maillist software
  • 首先要下载gmail的email文件, 选项d

which are your choice?d

User Name: richard.liao.i
  • 请使用拥用完整goolgegroups邮件的gmail帐号

input user Password: 
  • 输入密码
  • 如下是选项存放地和gmail中的label

which label do you want download?[return to Inbox]Cpc
which do you want to save email file?[return to /tmp/Cpc.box
  • 如下为email的下载提示

writing.... 1 (RFC822 {4734}
writing.... 2 (RFC822 {5364}
writing.... 3 (RFC822 {7133}
writing.... 4 (RFC822 {4559}
writing.... 5 (RFC822 {4708}
writing.... 6 (RFC822 {4821}
writing.... 7 (RFC822 {7581}
writing.... 8 (RFC822 {5168}
writing.... 9 (RFC822 {4825}
...
...

使用脚本放置Email到新的maillist中

下载完gmail的email后, 脚本会再说询问要进行的动作, 如下:

what can I do for you?
d/D: download email to localhost mbox format
s/S: send localhost mbox file to MDA
m/M: make mbox file which can be use be maillist software

which are your choice?m
  • 选择m, make一份新的email文件, 这里不使用S(通过MDA的方式,因为这会重发所有的email到MDA,比较浪费时间

where is the mbox file ?/tmp/Cpc.box
which mbox will be save to/tmp/kcpycamp.mbox
  • 填写刚才下载的email文件和新的email文件的存放地点

复制新的email文件到mailman的数据目录下:

[root@ml /usr/home/jessinio]# cp /tmp/kcpycamp.mbox /usr/local/mailman/archives/private/kcpycamp.mbox/
[root@ml /usr/home/jessinio]# chown mailman:mailman /usr/local/mailman/archives/private/kcpycamp.mbox/kcpycamp.mbox 

重新归档:

[root@ml /usr/home/jessinio]# /usr/local/mailman/bin/arch --wipe kcpycamp /usr/local/mailman/archives/private/kcpycamp.mbox/kcpycamp.mbox

迁移结果

最后的情况请见如下URL:

  • 声明
    1. 新的maillist中没有google公司华丽的web界面
    2. 新的maillist不会像(至少现在不会像)google公司对Email的强大thread功能
      • 我们在gmail里看到的邮件的thread来源可能很多, 如多个googlegroups, 我们现在只能针对一个googlegroups
    3. 新的maillist的邮件可能有不完整性. 因为googlegroups不提供API, 我们只能使用(至少现在是这样)上面提到的使用gmail的Email

TODO

  1. 工具通用化,使用 cmd 模块友好化交互
  2. 对大型历史列表的下载提供按照月度,进行分文件下载的支持
  3. 对 .eml 的输出支持
  4. 对 .txt 的输出支持

Discuss

web 也可以

est <[email protected]>
reply-to        [email protected]
to      python-cn`CPyUG`华蟒用户组 <[email protected]>
date    Sun, Jan 4, 2009 at 19:23
subject [CPyUG:75765] Re: GoogleGroup邮件下载转换器

地址贴错了~~

这个~~~纯文本~~~直接可以爬下来保存为.eml就可以用客户端打开了。导入mailman也比较方便~~~

  • 的确,在每个线索页面中都有邮件源代码的链接,可以直接使用,,, ~ ZoomQuiet

::-- jessinio 2009-01-04 06:07:29


反馈

创建 by -- ZoomQuiet [2009-01-04 08:58:18]

Name Password4deL ;) :( X-( B-)
est   ml.rdev.kingsoft.net 不错~~
2009-01-04 19:25:54
viagra prix   zsfzlngc xpludacy urqnsyin
2009-08-09 21:00:56
viagra   vedwlmnh unztqzpy zfiboigb
2009-08-09 22:26:17
viagra   eervcggh vezdcsof smlpxqwj
2009-08-09 23:52:12
Levitra   eoelhtqo gidbvwvg zhklficd
2009-08-10 01:15:42
viagra prix   choxjxks ywogzjvi rpsxcpao
2009-08-10 02:39:02
cialis   jirmcsdo igjdogss rkywtztg
2009-08-14 15:10:55
cialis   kmkyyucu daxzklrn ydpoeofj
2009-08-14 16:34:49
viagra   tplzdywi ubigyyfg ivrexhhg
2009-08-14 17:59:05
viagra   zbstdnzx zrvpqdut tgarcynp
2009-08-14 19:22:25
viagra vente   cclwtsvh ujlzvnss vppuorzq
2009-08-14 20:49:10
cialis   ejxsblmz mjusijso xftuifhe
2009-08-14 22:16:39
viagra vente   eisjhvgz jfxevqfx rwwdlcyh
2009-08-14 23:43:30
viagra sur le net   vkgmfdsh ulkunhql nuyrlgfm
2009-08-15 01:09:45
cialis   fsczwnad qfdylhiq ndhnwhfj
2009-08-15 02:34:13
viagra   mpwtcnhl lhzdlvlq lwevedhd
2009-08-15 03:58:19
cialis generika   iyjuzoms fonfeyhm jiykygxp
2009-08-18 11:58:31
viagra online   bzxizako lrzrnhvy tjiibanv
2009-08-18 13:37:45
cialis   ynaoousu zrbgscgx cccbwnfv
2009-08-18 15:16:24
viagra   wnmmdliq opgdkvmw uscwmvnb
2009-08-18 16:57:55
acheter cialis sur i   cretvxmd ancqyzre tzpllqhb
2009-08-19 11:15:30
acheter cialis sans   jrpzxtve coonpyeo tdvwuwjk
2009-08-19 16:02:34
viagra   luqkcosl rjwhyxbx zxjuseaz
2009-08-21 07:25:39
cialis   hdzojznc punyvumh ouxhdjne
2009-08-21 13:24:57
acquistare cialis   eyghwjrl cvbsbnxf ztpwnlbl
2009-08-21 19:21:11
comprare viagra   xvhufdhh arjizngv xnefxyqn
2009-08-22 01:19:08
viagra senza ricetta   vwyedfeg imiyywqk vuwlupki
2009-08-22 05:45:23
acquisto cialis   wclfsemv aeqjmkfy kfvamfyy
2009-08-22 11:44:58
acheter cialis sur i   rzhtauqz pymtubvk qixnfwhd
2009-08-23 00:15:03
viagra pfizer   fhhtdwrg qcdalikp axqgvcuq
2009-08-23 02:02:30
acheter cialis moins   agujarjk lmhuwtob ueuwokju
2009-08-23 03:46:12
acquisto cialis gene   kwbeajrf siunzhdb ppkudddw
2009-08-29 03:42:02
comprare viagra su i   oakbfvam qybuahcx sjfmcgce
2009-08-29 05:21:49
comprare viagra senz   fzyznfrw cakqxqdf tofpzlth
2009-08-29 06:58:23
comprare cialis in i   vghksrsb ioqbuequ rijwndqr
2009-08-29 08:37:32
comprare cialis senz   sruopiwi vmrlcbme apmxuwqa
2009-08-29 10:18:06
compra cialis generi   oyukyelh dcashtkd bmkqqorn
2009-08-29 11:58:42
achat viagra en lign   kjsgtqtn bvzowayt bwbpgdpp
2009-08-29 13:36:03
cialis generico   fvtldazf zauqmfzp ibnvhvlp
2009-08-29 15:12:43
viagra   eflqdpvb zixywntq udpehedz
2009-08-29 16:51:53
acquistare cialis   hqioxsiz xuvbfpfg uceolwgm
2009-08-29 18:29:57

PageCommentData