python + 正则爬取豆瓣页面的邮箱:
import requests
import re
html=requests.get('https://www.douban.com/group/topic/124565040/?start=0')
pattern=re.compile(r'[a-zA-Z0-9-_\.]+@[a-zA-Z0-9-_]+\.[a-zA-Z0-9-_]+')
res=re.findall(pattern,html.text)
for i in set(res):
print(i)
主要是邮箱正则表达式的书写
一般邮箱的格式是:
emailname@host.suffix
emailname 可以包含:多个数字字母短横线下划线点,即 [a-zA-Z0-9-.]+
域名氛围两部分 host
host 可以包含:多个数字字母短横线下划线,[a-zA-Z0-9-]+
suffix 可以包含:多个数字字母短横线下划线,[a-zA-Z0-9-_]+
所以邮箱的正则就是:[a-zA-Z0-9-.]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-_]+