【问题标题】:Get all email addresses from website to csv从网站获取所有电子邮件地址到 csv
【发布时间】:2015-01-26 11:04:40
【问题描述】:

我需要从该网站提取所有电子邮件地址: http://www.danskeark.dk/Medlemsindex.aspx 要导航到地址,请转到字母 A、B、C、D...,然后按公司。

我还需要将找到的地址导出到excel。

我该怎么做最简单的方法?

【问题讨论】:

  • 你可能想让自己成为一个爬虫。
  • 使用import.io,您可以创建爬虫和/或提取器,它们还可以浏览分页页面以复制所有数据并导出为 CSV。
  • import.io 完美运行!非常感谢您的分享:)

标签: excel email extract


【解决方案1】:

在新目录中使用 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

【讨论】:

  • wget是如何工作的,我需要一个程序来运行代码吗?
  • wget 是一个命令行程序,已经在大多数 linux 发行版中,但也可用于 Windows,例如cygwin
  • 你好。我找到了另一种方法来做到这一点 - 上面的答案。感谢您的帮助。
【解决方案2】:

这是一个用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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多