用于电子邮件捕获的元编程Python脚本

时间:2014-02-11 02:48:42

标签: python wget curl c++

如何修改下面的代码来捕获所有电子邮件而不是图像:

import urllib2
import re
from os.path import basename
from urlparse import urlsplit

url = "URL WITH IMAGES"
urlContent = urllib2.urlopen(url).read()
# HTML image tag: <img src="url" alt="some_text"/>
imgUrls = re.findall('img .*?src="(.*?)"', urlContent)

# download all images
for imgUrl in imgUrls:
    try:
        imgData = urllib2.urlopen(imgUrl).read()
        fileName = basename(urlsplit(imgUrl)[2])
        output = open(fileName,'wb')
        output.write(imgData)
        output.close()
    except:
        pass

需要从一系列网站获取目录。我正在使用C ++通过多次调用.py文件为Unix创建代码,然后每次将其附加到现有文件中。

1 个答案:

答案 0 :(得分:1)

解析/验证电子邮件地址需要强大的正则表达式。你可以在谷歌上寻找那些。我正在向您展示一个解析正则表达式的简单电子邮件地址。

emails = re.findall('([a-zA-Z0-9\.]+@[a-zA-Z0-9]+\.[a-zA-Z]{2,3})', urlContent)

这只是一个基本的例子。你需要使用一个强大的。