大家好,我們繼續網抓數據的學習,HTTP通訊一般情況返回的是啥呢?就是頁面的原始碼。今日我們開始學習HTML文檔部分,這部分內容是我們認識伺服器反饋會數據的基礎,有了這部分的知識,我們才能更好從伺服器返回的數據中提取我們需要的部分。在這部分的講解中,我們需要了解HTML的各種元素,及其屬性。
這節內容是「VBA信息獲取與處理」教程中第八個專題「VBA與HTML文檔」的第一節。由於涉及到文章的審核相關問題(設計到一些網址的話審核通過十分困難),關於網抓的內容在平臺上發表的不全,平臺發表的代碼有些運行不了,這是因為缺少某些自定義函數的過程,如果有需要學習網抓的朋友可以聯絡我分享這套教程。其中的程序文件是非常值得擁有的代碼源碼。
第一節 什麼是HTML超文本標記語言
我們上網需要瀏覽器,瀏覽器的作用就是把伺服器返回的原始碼,翻譯成我們可視的生動地頁面。它的作用是和VBA代碼一樣的,就要要把各種邏輯關係用代碼的形式表現出來。伺服器返回返回的原始碼是什麼語言呢,就是通常所說的,超文本標記語言。超文本標記語言(英語:HyperText Markup Language,簡稱:HTML)是一種用於創建網頁的標準標記語言。您可以使用 HTML 來建立自己的 WEB 站點,HTML 運行在瀏覽器上,由瀏覽器來解析。
1 超文本標記語言的作用
什麼是標記語言呢?顧名思義,它只能用於展示,展示我們所看到的網頁頁面。不是程式語言。為啥叫超文本呢,大家仔細看,這堆原始碼有什麼特徵呢,就是有很多<…>這樣的文本,一般而言,我們把<…>叫做標籤。我們先看看下面一段的源碼:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta http-equiv="Cache-Control" content="no-siteapp" />
<title>小遊戲,4399小遊戲,小遊戲大全,雙人小遊戲大全 - www.4399.com</title>
<meta name="description" content="4399小遊戲大全包含洛克王國,賽爾號,4399洛克王國,連連看 ,連連看小遊戲大全,雙人小遊戲大全,H5在線小遊戲,4399賽爾號,4399奧拉星,4399奧比島,4399彈彈堂,4399單人小遊戲,奧比島小遊戲,造夢西遊5等最新小遊戲。" />
<meta name="keywords" content="小遊戲,4399小遊戲,在線小遊戲,雙人小遊戲,小遊戲大全,雙人小遊戲大全" />
<meta property="og:type" content="image"/>
<meta property="og:image" content="http://imga1.5054399.com/upload_pic/2015/7/10/4399_11174921955.jpg" />
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
<meta property="qc:admins" content="5303563577643116375" />
<meta property="wb:webmaster" content="9a9751c8cd36bccb" />
<link rel="alternate" media="only screen and(max-width: 640px)" href="http://h.4399.com/"/>
<meta http-equiv="Cache-Control" content="no-transform " />
截圖:
網頁截圖:
瀏覽器正是把上面的代碼翻譯成了我們上面的網頁。
2 超文本標記語言的基本特徵
超文本語言中的標籤都是成對出現的,這也是這種語言的特徵。例如:「<title>小遊戲,4399小遊戲,小遊戲大全,雙人小遊戲大全 - www.4399.com</title>」。
第一個<title>叫做開始標籤,第二個</title>多帶了個/叫結束標籤。標籤之間就是網頁的文本,例如這個例子,就是我們網頁標題的文本「小遊戲,4399小遊戲,小遊戲大全,雙人小遊戲大全 - www.4399.com」。所以,標籤的作用就是,給文本打上標記,告訴瀏覽器,怎麼顯示這個文本。例如本例,要求瀏覽器把「小遊戲,4399小遊戲,小遊戲大全,雙人小遊戲大全 - www.4399.com」顯示成網頁的標題。HTML文檔=文本+標籤,這就是所謂超文本。
3 超文本標記語言的一個簡單實例
在上面我講了什麼是HTML語言,及其特徵,下面我們通過一個實例進一步認識他:
<html>
<body>
<h1>學習VBA語言</h1>
<p>為了更好的掌握VBA的各個知識點,您可以參考我的第一套教程:VBA代碼解決方案</p>
</body>
</html>
我們把上面的幾行代碼錄入到記事本中,保存成.html文件。HTML基礎學習.HTML
然後正常雙擊大家這個文件,就會是一個瀏覽器文件了:
本節知識點回向:
什麼是HTML語言?特徵是什麼?
本節參考文件:HTML基礎學習.html
積木編程的思路內涵:
在我的系列書籍中一直在強調「搭積木」的編程思路,這也是學習利用VBA的主要方法,特別是職場人員,更是要採用這種方案。其主要的內涵:
1代碼不要自己全部的錄入。你要做的是把積木放在合適的位置然後去修正代碼,一定要拷貝,從你的積木庫中去拷貝,然後修正代碼,把時間利用到高效的思考上。
2 建立自己的「積木庫」。平時在學習過程中,把自己認為有用的代碼放在一起,多積累,在用到的時候,可以隨時拿來。你的積木庫資料越多,你做程序的思路就會越廣。
VBA的應用界定
VBA是利用Office實現個人小型辦公自動化的有效手段(工具)。這是我對VBA的應用界定。在取代OFFICE新的辦公軟體沒有到來之前,誰能在數據處理方面做到極致,誰就是王者。其中登峰至極的技能非VBA莫屬!
我記得20年前自己初學VBA時,那時的資料甚少,只能看源碼自己琢磨,真的很難。20年過去了,為了不讓學習VBA的朋友重複我之前的經歷,我根據自己多年VBA實際利用經驗,推出了六部VBA專門教程:
第一套:VBA代碼解決方案是VBA中各個知識點的講解,教程共147講,覆蓋絕大多數的VBA知識點,初學必備;
第二套:VBA資料庫解決方案資料庫是數據處理的專業利器,教程中詳細介紹了利用ADO連接ACCDB和EXCEL的方法和實例操作,適合中級人員的學習。
第三套:VBA數組與字典解決方案數組和字典是VBA的精華,字典是VBA代碼水平提高的有效手段,值得深入的學習,是初級及中級人員代碼精進的手段。
第四套:VBA代碼解決方案之視頻是專門面向初學者的視頻講解,可以快速入門,更快的掌握這門技能。這套教程是第一套教程的視頻講解,聽元音更易接受。
第五套:VBA中類的解讀和利用這是一部高級教程,講解類的虛無與肉身的度化,類的利用雖然較少,但仔細的學習可以促進自己VBA理論的提高。這套教程的領會主要是讀者的領悟了,領悟一種佛學的哲理。
第六套教程:《VBA信息獲取與處理》,這是一部高級教程,涉及範圍更廣,實用性更強,面向中高級人員。教程共二十個專題,包括:跨應用程式信息獲得、隨機信息的利用、電子郵件的發送、VBA網際網路數據抓取、VBA延時操作,剪切板應用、Split函數擴展、工作表信息與其他應用交互,FSO對象的利用、工作表及文件夾信息的獲取、圖形信息的獲取以及定製工作表信息函數等等內容。
大家可以根據以上資料1→3→2→6→5或者是4→3→2→6→5的順序逐漸深入的逐漸學習。教程提供講解的同時提供了大量的積木,如需要可以WeChat: NZ9668
學習VBA是個過程,也需要經歷一種枯燥的感覺
如太白詩云:眾鳥高飛盡,孤雲獨去閒。相看兩不厭,只有敬亭山。學習的過程也是修心的過程,修一個平靜的心。在代碼的世界中,心平靜了,心情好了,身體自然而然就好。心靜則正,內心裡沒有那麼多邪知邪見,也就沒有那麼多妄想。利人就是利己。這些教程也是為幫助大家起航,助上我自己之力,我的上述教程是我多的經驗的傳遞,
「水善利萬物而不爭」,綿綿密密,微則無聲,巨則洶湧。學習亦如此,知道什麼是自己所需要的,不要蜷縮在一小塊自認為天堂的世界裡,待到暮年時再去做自欺欺人的言論。要努力提高自己,用一顆充滿生機的心靈,把握現在,這才是進取。越是有意義的事情,困難會越多。願力決定始終,智慧決定成敗。不管遇到什麼,都是風景。看淡紛爭,看輕得失。茶,滿也好,少也好,不要計較;濃也好,淡也好,其中自有值得品的味道。去感悟真實的時間,靜下心,多學習,積累福報。而不是天天混日子,也不是天天熬日子。在後疫情更加嚴峻的存量殘殺世界中,為自己的生存進行知識的儲備,特別是新知識的儲備。學習時微而無聲,利用時則巨則洶湧。
每一分收穫都是成長的記錄,怎無憑,正是這種執著,成就了朝霞的燦爛。最後將一闕詞送給致力於VBA學習的朋友,讓大家感受一下學習過程的枯燥與執著:
浮雲掠過,暗語無聲,
唯有清風,驚了夢中啼鶯。
望星,疏移北鬥,
奈將往事雁同行。
阡陌人,昏燈明暗,
忍顧長亭。
多少VBA人,
暗夜中,悄聲尋夢,盼卻天明。
怎無憑!
回向學習利用VBA的歷歷往事,不勝感慨,謹以這些文字給大家,分享我多年工作實際經驗的成果,隨喜這些有用的東西,給確實需要利用VBA的同路人。
分享成果,隨喜正能量