日拱一卒|數據挖掘007
爬蟲涉及的技術包括但不限於熟練一門編程語言(這裏以 Python 爲例) HTML 知識、HTTP 協議的基本知識、正則表達式、數據庫知識,常用抓包工具的使用、爬蟲框架的使用、涉及到大規模爬蟲,還需要了解分佈式的概念、消息隊列、常用的數據結構和算法、緩存,甚至還包括機器學習的應用,大規模的系統背後都是靠很多技術來支撐的。(Python之禪 劉志軍)
一、什麼是HTML
HTML全稱Hyper Text Mark-up Language(超文本標記語言),它不是一種編程語言,而是一種標記語言 (markup language)。標記語言是一套標記標籤 (markup tag),HTML 使用標記標籤來描述網頁。
HTML是編寫網頁的語言,瀏覽器懂這門語言,爬蟲本質上是模擬瀏覽器抓取數據。因此懂些HTML知識對入門爬蟲很有幫助~
作爲一門語言,它有自己的語法規則,用來表示比“文本”更豐富的意義,比如圖片,表格,鏈接等。瀏覽器(IE,FireFox等)軟件知道HTML語言的語法,可以用來查看HTML文檔。目前互聯網上的絕大部分網頁都是使用HTML編寫的。
二、HTML長什麼樣?
HTML的語法:文本+標籤
即給文本加上表明文本含義的標籤(Tag),讓用戶(人或程序)能對文本得到更好的理解。
關於標籤:
- HTML 標籤是由尖括號包圍的關鍵詞,比如 <html>
- HTML 標籤通常是成對出現的,比如 <b> 和 </b>
- 標籤對中的第一個標籤是開始標籤,第二個標籤是結束標籤
- 開始和結束標籤也被稱爲開放標籤和閉合標籤
<html>
<head>
<title>歡迎來到簡書-皮壹俠</title>
</head>
<body>
歡迎訪問<a href="https://www.jianshu.com/u/5a41eb2ceec6">皮壹俠的簡書主頁</a>!
</body>
</html>
如果想嘗試,可以下載Notepad++來動手試一試
所有的HTML文檔都應該有一個<html>標籤
<html>標籤可以包含兩個部分:<head>和<body>
- <head>標籤用於包含整個文檔的一般信息
- 文檔的標題(<title>標籤用於包含標題)
- 對整個文檔的描述
- 文檔的關鍵字
- ...
- <body>標籤存放文檔的具體內容
上面代碼中,<a>標籤用於表示鏈接,在瀏覽器查看HTML文檔時,點擊<a>標籤括起來的內容時,通常會跳轉到另一個頁面。這個要跳轉到的頁面的地址由<a>標籤的href屬性指定
如上<a href="https://www.jianshu.com/u/5a41eb2ceec6">
,href屬性的值就是https://www.jianshu.com/u/5a41eb2ceec6
三、HTML可以包含哪些內容?
通過不同的標籤,HTML文檔可以包含不同的內容,比如文本,鏈接,圖片,列表,表格,表單,框架等。
文本
- HTML對文本的支持是最豐富的,你可以設置不同級別的標題,分段和換行,可以指定文本的語義和外觀,可以說明文本是引用自其它的地方,等等等等。
鏈接
- 鏈接用來指出內容與另一個頁面或當前頁面某個地方有關。
圖片
- 圖片用於使頁面更加美觀,或提供更多的信息。
列表
- 列表用於說明一系列條目是彼此相關的。
表格
- 表格是按行與列將數據組織在一起的形式。也有不少人使用表格進行頁面佈局。
表單
- 表單通常由文本輸入框,按鈕,多選框,單選框,下拉列表等組成,使HTML頁面更有交互性。
框架
- 框架使頁面裏能包含其它的頁面。
四、HTML文檔格式
HTML 文檔 = 網頁
- HTML 文檔描述網頁
- HTML 文檔包含 HTML 標籤和純文本
- HTML 文檔也被稱爲網頁
Web 瀏覽器的作用是讀取 HTML 文檔,並以網頁的形式顯示出它們。瀏覽器不會顯示 HTML 標籤,而是使用標籤來解釋頁面的內容。在HTML文本中,用尖括號括起來的部分稱爲標籤。
如果想在正文裏使用尖括號(或者大與號小與號,總之是同一個東西),必須使用字符轉義,也就是說轉換字符的原有意義。<應該使用<
代替,>則使用>
,至於&符號本身,則應該使用&
替代。
標籤本質上是對它所包含的內容的說明,可能會有屬性,來給出更多的信息。比如<img>(圖片)標籤有src屬性(用於指明圖片的地址),width和height屬性(用於說明圖片的寬度和高度)。
HTML裏能使用哪些標籤,這些標籤分別可以擁有哪些屬性,都是有規定的,後續如深入學習HTML其實就是學習這些標籤。
標籤通常有開始部分和結束部分(也被稱爲開始標籤和結束標籤),它們一起限定了這個標籤所包含的內容。
屬性只能在開始標籤中指定,屬性值可以用單引號或雙引號括起來。結束標籤都以/加上標籤名來表示。有時候,有些標籤並不包含其它內容(只包括自己的屬性,甚至連屬性都沒有),這種情況下,可以寫成類似這樣:<img src="logo.gif" />
。(注意最後的一個空格和一個反斜槓),它說明這個標籤已經結束,不需要單獨的結束標籤了。
對比下:
<img src="logo.gif" />
<a href="http://www.baidu.com">百度</a>
注:HTML文檔裏所有的空白符(空格,Tab,換行,回車)會被瀏覽器忽略,唯一的例外是空格,對空格的處理方式是所有連續的空格被當成一個空格,不管有一個,還是兩個,還是100個。之所以有這樣的規則是因爲忽略空白符能讓使用HTML的作者以他覺得最方便的格式來排列內容,比如可以在每個標籤開始後增加縮進,標籤結束後減少縮進。由於英語文本中空格用得很普遍(用於分隔單詞),所以對空格做了這樣的特殊處理。如果要顯示連續的空格(比如爲了縮進),應該用
來代表空格。
五、常用標籤介紹
(一)文本
(二)圖片
(三)鏈接
(四)分段與換行
(五)表格
(六)列表
(七)框架
若繼續深入瞭解,可以瀏覽 .W3school HTML教程
參考資料:
1.HTML 30分鐘入門教程
2.Python爬蟲知識點梳理
3..W3school HTML教程
4.HTML文檔基本格式
公衆號推薦
Python之禪
關於日拱一卒
2019年
日拱一卒選擇
英語和數據挖掘
英語 輸出300次 打卡/筆記
數據 輸出200篇 筆記
有願意參與到日拱一卒玩
可以私信 我們拉個小羣
新年共同進步~