《python數(shù)據(jù)爬取 技術(shù)與實(shí)戰(zhàn)手冊(cè)》

1. HTML

HTML文件基本構(gòu)成

<!DOCTYPE html>                               //聲明為html5文檔
<html lang="en">                              //語(yǔ)言屬性為英文
<head>                                        //是所有頭部元素的容器
  <meta charset="UTF-8">                      //聲明編碼方式為 UTF-8
  <title> </title>                            //頁(yè)面標(biāo)題
</head>                                       //<head> 結(jié)束 
<body>                                        //html的主題內(nèi)容
  <h1> </h1>                                  //標(biāo)題  從<h1>到<h6>由大到小 
  <p>                                         //段落
  <!-- 這是一段注釋-->
  

<body>
</html>

屬性

HTML標(biāo)簽可以在開始標(biāo)簽中添加屬性,為HTML標(biāo)簽提供一些附加信息
比如說(shuō)

<body bgcolor='grey'>                         //背景顏色
<h1 align='left'>                             //對(duì)齊方式
<p id="usersname">                            //id屬性是標(biāo)簽在網(wǎng)頁(yè)的唯一標(biāo)識(shí)  
<>           

有一些在網(wǎng)頁(yè)中經(jīng)??吹降脑?,比如超鏈接,圖像,表格,列表,表單等

1.超鏈接

一般用包含href屬性的<a>標(biāo)簽創(chuàng)建超鏈接,<a>標(biāo)簽一般包含三個(gè)屬性,

  • <href> 存放要跳轉(zhuǎn)到的目標(biāo)網(wǎng)址
  • <target> 決定點(diǎn)開鏈接后,目標(biāo)網(wǎng)頁(yè)在何處出現(xiàn),默認(rèn)為"_self"
  • <name>
<a > Baidu <a>
<a  name="baidu"> Baidu <a>
<a  target="_blank"> Baidu <a>     //新標(biāo)簽頁(yè)
<a  target="_self"> Baidu <a>      //當(dāng)前頁(yè)面
<a  target="_parent"> Baidu <a>    //父窗口?

2.圖像

標(biāo)簽為<img> ,<img>為空標(biāo)簽,即只有屬性,沒有閉合標(biāo)簽
一般有兩個(gè)屬性 源地址(src)和替代文件(alt)

 <img src="圖片地址" alt="替代文本">

alt屬性的作用是在src無(wú)法加載時(shí)顯示替代文本,有利于用戶在網(wǎng)絡(luò)不暢的情況下了解圖片內(nèi)容


3.表格

<table> </table>標(biāo)簽,首先用<tr> </tr>分行 (table row),再用<td> </td>分格(table date)

<table>
    <tr>
        <td>1</td>
        <td>2</td>
    </tr>
    <tr>
        <td>3</td>
        <td>4</td>
    </tr>
</table>
效果

4.列表

分為兩類,有序列表和無(wú)序列表 ,其中包含<li></li> (list item)

  • <ul></ul> 無(wú)序列表 (unordered list)
    <ul>
        <li>123</li>
        <li>456</li>
    </ul>
效果
  • <ol></ol> 有序列表 (ordered list)
    <ol>
        <li>123</li>
        <li>456</li>
    </ol>
效果

5.表單

<form> </form>
一般用來(lái)做輸入框,表單元素最重要的元素是<input>,<input>也是一個(gè)沒有結(jié)束標(biāo)簽的空標(biāo)簽,主要用于收集用戶輸入


re庫(kù)

python中正則表達(dá)式功能都集成在re模塊中


match()和search()

  1. match() 必須從頭開始匹配
  2. search() 全部
    若匹配成功,返回一個(gè)對(duì)象,否則null,該對(duì)象有兩個(gè)方法:
    1. group()
    2. groups()
      若正則表達(dá)式中無(wú)分組,group()返回匹配結(jié)果,groups ()返回空元組
      若正則表達(dá)式中有分組,group()和group(0)返回整個(gè)匹配結(jié)果,group(n)返回第n個(gè)分組的匹配結(jié)果,groups()返回元組,元素為每一組的匹配結(jié)果

findall() : 返回列表包含所有匹配的子串,如果包含分組,則只返回分組的那一部分,如果有多個(gè)分組,以列表嵌套元組返回
split() : 返回列表,表示字符串被某字符分解
sub() : sun(a,b,c) 用b替換c中的a, 或者

import re
r = 'a'
r = re.compile(r)
a = ' a bcdefg'
print(r.sub('s', a))

這兩種方法都是返回替換后的字符串,字符串本身不變
compile() : 將正則表達(dá)式字符串預(yù)編譯,在數(shù)據(jù)較大情況下可加快速度

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容