从网站获取所有电子邮件地址

我需要从这个网站提取所有的电子邮件地址: http ://www.danskeark.dk/Medlemsindex.aspx导航到地址去字母A,B,C,D …然后由公司。

我也需要将find的地址导出为ex​​cel。

我如何做到这一点?

  • 感谢您的帮助 – Rasmus

用wget在一个新的目录镜像的网站

wget -mk --domains danskeark.dk danskeark.dk 

grep所有的邮件地址在该目录中的父目录中的csv

 find . | xargs grep -E -o "\b[a-zA-Z0-9.-]+@[a-zA-Z0-9.-]+\.[a-zA-Z0-9.-]+\b" > ../out.csv 

这里有一个用ahk (Windows免费的开源脚本语言)制作的小爬虫,

所以你需要从上面的链接下载

我用一个可见的IE对象来保持它的打开状态,使它有点慢(5-7分钟),但是如果你只需要它一次…

 url := "http://www.danskeark.dk/Medlemsindex.aspx" wb := ComObjCreate("InternetExplorer.Application") wb.visible := true virksomheds_Urls := [] chars := "ABCDEFGHIJKLMNOPQRSTUVWXYZÆØÅ0123456789" loop, parse, chars { index := "?index=" A_LoopField wb.Navigate(url . index) while wb.readyState!=4 || wb.document.readyState != "complete" || wb.busy continue pages := wb.document.getElementById("pagesTop").getElementsByTagName("A").length - 1 loop % pages { wb.Navigate(url . index . "&pg=" A_index) while wb.readyState!=4 || wb.document.readyState != "complete" || wb.busy continue loop % (links := wb.document.getElementsByTagName("UL")[1].getElementsByTagName("A")).length { virksomheds_Urls.Insert(links[A_index-1].href) } } } for, key, val in virksomheds_Urls { wb.Navigate(val) while wb.readyState!=4 || wb.document.readyState != "complete" || wb.busy continue csv .= (Email := wb.document.getElementById("divContactBox").GetelementsByTagName("A")[0].innertext) "," } FileAppend, %csv%, Emails_csv.csv run, excel.exe Emails_csv.csv return