利用VB提取HTML檔案中的EMAIL位址

2021-04-17 08:50:19 字數 2833 閱讀 7132

利用vb

提取html

檔案中的email

位址

電子郵件(

email)是internet上應用最廣泛的一種服務之一。我們每天都在使用電子郵件,有時為了宣傳我們的產品、**等,更是離不開電子郵件,這就需要收集很多的

email

vb自編乙個

email

位址提取器,用來

提取儲存在我們硬碟中的

html

檔案中所包含的

email

位址。一 設計介面進入

vb,選擇「標準exe」新建一工程,選擇「工程」選單下的「引用」,選中microsoft scripting runtime」,然後再選擇「工程」選單中的「部件」,在彈出的對話方塊中選擇「microsoft common dialog control 6.0」,在工具箱中加入通用對話方塊控制項。接下來在預設窗體form1上新增三個標籤控制項,乙個文字框控制項text1,乙個列表框控制項list1,並命名為lst

email,三個命令command1~command3,其caption屬性分別設定為「

提取」、「整理」、「儲存」,設定完成的介面如下圖所示:

二 輸入源程式dim x, y, st1, st2, tmpy as integer'

提取email

位址子程式private sub strip

email(filepath as string)dim tmp

email1, tmp

email2 as stringopen filepath for input as #1do until eof(1)on error resume nextinput #1, tmp

email1for x = 1 to len(tmp

email1)tmp

email2 = mid(tmp

email1, x, 7)'查詢

email標誌if tmp

email2 = "mailto:" thenst1 = xtmpy = x + 1for y = 1 to len(tmp

email1)tmp

email2 = mid(tmp

email1, tmpy, 1)if tmp

email2 = chr(34) or tmp

email2 = "?" thenst2 = tmpytmp

email2 = mid(tmp

email1, st1 + 7, ((st2 - st1) - 7))if (left(tmp

email2, 2) <> "//") and (left(tmp

email2, 1) <> " ") thenlst

email.additem tmp

email2exit forend ifend iftmpy = tmpy + 1next yend ifnext xloopclose #1end subprivate sub command1_click()dim fs as new filesystemobject ' 建立 filesystemobjectdim fd as folder ' 定義 folder 物件dim sfd as folderset fd = fs.getfolder(text1)command1.enabled = falsescreen.mousepointer =

vbhourglassfindfile fd, "*.htm" 'text1.textcommand1.enabled = truescreen.mousepointer =

vbdefaultend subsub findfile(fd as folder, filename as string)dim sfd as folder, f as file' part i查詢該資料夾的所有檔案for each f in fd.filesif ucase(f.name) like ucase(filename) thenlabel2 = f.pathstrip

email (f.path)lbl

email = "已查詢到的

位址數為: " & lst

email.listcountend ifdoeventsnext' part ii迴圈查詢所有子資料夾for each sfd in fd.subfoldersfindfile sfd, filename ' 迴圈查詢nextend sub private sub command2_click()'去掉重複的

email

位址for i = 0 to lst

email.listcount - 1for x = 0 to lst

email.listcount - 1if i = x then goto nextxif lcase(lst

email.list(x)) = lcase(lst

email.list(i)) thenon error resume nextlst

email.removeitem xend ifnextx:next xnext ilbl

email = "共有" & lst

email.listcount & "個

emailaddress.txt"end if'儲存檔案open strname for output as #1on error resume nextfor i = 0 to lst

email.listcount - 1print #1, lst

email.list(i)nextclose #1end sub本程式在windows me、

vb6.0中文企業版中執行通過。以上程式稍加修改即可實現

提取其他型別

檔案中的

email

位址。

VB中利用WinRAR進行檔案壓縮

winrar和winzip,筆者在 vb程式設計過程 中利用winrar工具來壓縮資料庫檔案,並完成遠端傳輸,十分方便,在此向大家介紹一下。用winzip的方法類似。一 shell函式 shell函式是 vb中的內部函式,它負責執行乙個可執行檔案,返回乙個variant double 如果成功的話,...

VB 中的檔案系統

今天下午,在看乙個程式的時候,裡面對檔案的操作,讓我很是頭疼。因此,把vb中的關於檔案的操作做了一次複習,然後加深了對vb檔案操作的理解。檔案 檔案是程式設計中的乙個重要的概念,檔案是指儲存在計算機外部儲存介質上的資訊集合。windows與其它作業系統一樣,是以檔案為單位管理資料的。在應用程式進行檔...

html中vb的三種響應模式

一 在客戶端指令碼中定義乙個按鈕名加 onclick的過程 二 按鈕裡面將某個行為跟某個過程連線 附 常見動作 onblur onchange onclick ondblclick onfocus onkeydown onkeypress onkeyup onmousedown onmousemov...