国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第11練:xpath快速定位提取數(shù)據(jù)

這篇具有很好參考價(jià)值的文章主要介紹了【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第11練:xpath快速定位提取數(shù)據(jù)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

目錄

一、目標(biāo)1:使用etree解析數(shù)據(jù)

二、目標(biāo)2:使用xpath爬取指定數(shù)據(jù)

三、目標(biāo)3:提取指定數(shù)據(jù)

?四、網(wǎng)絡(luò)安全小圈子


一、目標(biāo)1:使用etree解析數(shù)據(jù)

其余的不用過(guò)多介紹,前面的練習(xí)都給大家已經(jīng)過(guò)了一遍

def get_page():
    url = 'https://www.chinaz.com/'
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:107.0) Gecko/20100101 Firefox/107.0",
    }

    res1 = requests.get(url, headers=headers, timeout=10)
    res = res1.content.decode('utf-8')  
    tree = etree.HTML(res)

其中數(shù)據(jù)解析代碼如下

    tree = etree.HTML(res)

對(duì)返回的內(nèi)容進(jìn)行UTF-8解碼,不然會(huì)出現(xiàn)亂碼

    res = res1.content.decode('utf-8') 


二、目標(biāo)2:使用xpath爬取指定數(shù)據(jù)

我們來(lái)爬一下這幾個(gè)標(biāo)題

【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第11練:xpath快速定位提取數(shù)據(jù),【網(wǎng)絡(luò)安全-帶你練爬蟲】,爬蟲,web安全,安全

?

找上一級(jí)

可以看到他們都在不同li標(biāo)簽下

所以他們的上一級(jí)標(biāo)簽ul相當(dāng)于是我們的列表合集

【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第11練:xpath快速定位提取數(shù)據(jù),【網(wǎng)絡(luò)安全-帶你練爬蟲】,爬蟲,web安全,安全

定位xpath路徑

定位li的xpath路徑

因?yàn)槲覀円@取到ul下所有l(wèi)i列表

【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第11練:xpath快速定位提取數(shù)據(jù),【網(wǎng)絡(luò)安全-帶你練爬蟲】,爬蟲,web安全,安全

?xpath路徑如下

    list = tree.xpath('//*[@id="cz"]/div[2]/div[3]/div/div[1]/div[1]/div/div[2]/div[2]/div/ul/li')

打印出來(lái)可以看見(jiàn)

【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第11練:xpath快速定位提取數(shù)據(jù),【網(wǎng)絡(luò)安全-帶你練爬蟲】,爬蟲,web安全,安全

?



三、目標(biāo)3:提取指定數(shù)據(jù)

定位xpath

然后還有3個(gè)標(biāo)簽才到h2標(biāo)簽

【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第11練:xpath快速定位提取數(shù)據(jù),【網(wǎng)絡(luò)安全-帶你練爬蟲】,爬蟲,web安全,安全

?

遍歷每一個(gè)目標(biāo)標(biāo)簽,并轉(zhuǎn)為text()格式

    f = open('test', 'w', encoding ='utf-8')
    for l in ul_list:
        desc = l.xpath('./div/div[1]/a/h2/text()')[0]
        print(desc + '\n')
        f.write(str(desc) + '\n')
    f.close()

運(yùn)行結(jié)果

【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第11練:xpath快速定位提取數(shù)據(jù),【網(wǎng)絡(luò)安全-帶你練爬蟲】,爬蟲,web安全,安全

?

完整代碼

import requests
from lxml import etree
def get_page():
    url = 'https://www.chinaz.com/'
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:107.0) Gecko/20100101 Firefox/107.0",
    }
    res1 = requests.get(url, headers=headers, timeout=10)
    res = res1.content.decode('utf-8')  
    tree = etree.HTML(res)
    ul_list = tree.xpath('//*[@id="cz"]/div[2]/div[3]/div/div[1]/div[1]/div/div[2]/div[2]/div/ul/li')
    f = open('test', 'w', encoding ='utf-8')
    for l in ul_list:
        desc = l.xpath('./div/div[1]/a/h2/text()')[0]
        print(desc + '\n')
        f.write(str(desc) + '\n')
    f.close()
if __name__ == '__main__':
    get_page()


?四、網(wǎng)絡(luò)安全小圈子

README.md · 書半生/網(wǎng)絡(luò)安全知識(shí)體系-實(shí)戰(zhàn)中心 - 碼云 - 開源中國(guó) (gitee.com)https://gitee.com/shubansheng/Treasure_knowledge/blob/master/README.md

GitHub - BLACKxZONE/Treasure_knowledgehttps://github.com/BLACKxZONE/Treasure_knowledge文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-542599.html

到了這里,關(guān)于【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第11練:xpath快速定位提取數(shù)據(jù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第2練:爬取指定位置數(shù)據(jù)

    【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第2練:爬取指定位置數(shù)據(jù)

    目錄 一、思路 二、工具 三、代碼處理 第一部分:發(fā)起請(qǐng)求+接收響應(yīng)(不過(guò)多講) 第二部分:解析HTML頁(yè)面+提取數(shù)據(jù) 第三部分:處理數(shù)據(jù) 分解步驟,化繁為簡(jiǎn) 爬蟲分為五步走: 發(fā)起HTTP請(qǐng)求:爬蟲使用HTTP協(xié)議向目標(biāo)網(wǎng)址發(fā)送請(qǐng)求,請(qǐng)求獲取特定的HTML頁(yè)面。這可以通過(guò)使用

    2024年02月12日
    瀏覽(14)
  • 【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第14練:文件內(nèi)容的讀取、取出

    【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第14練:文件內(nèi)容的讀取、取出

    目錄 一、目標(biāo)1:把文件內(nèi)容遍歷取出 二、目標(biāo)2:把文件內(nèi)容全部取出 三、網(wǎng)絡(luò)安全O ?(1)如果文件腳本在不同目錄 (2)如果文件直接和腳本在同一目錄 ?(1)存放取出的元素 (2)將目標(biāo)文件內(nèi)容的元素依次取出 (for循環(huán)) (3)所有元素依次添加進(jìn)列表中 (4)完整

    2024年02月16日
    瀏覽(19)
  • 【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第1練:發(fā)送請(qǐng)求獲取返回內(nèi)容

    【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第1練:發(fā)送請(qǐng)求獲取返回內(nèi)容

    目錄 一、前置知識(shí)1 二、前置知識(shí)2 requests庫(kù)的7個(gè)主要方法 語(yǔ)法: 注解: 三、擴(kuò)展工具 四、網(wǎng)絡(luò)安全小圈子 顧名思義網(wǎng)絡(luò)爬蟲第一步,爬取目標(biāo)?URL的網(wǎng)頁(yè)的信息 可以使用 urllib.request 和 requests發(fā)送請(qǐng)求,然后返回對(duì)應(yīng)的數(shù)據(jù)(py3) 1、urllib 庫(kù)是 Python 內(nèi)置的 2、requests 庫(kù)是

    2024年02月12日
    瀏覽(14)
  • 【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第23練:文件內(nèi)容的刪除+寫入

    【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第23練:文件內(nèi)容的刪除+寫入

    目錄 0x00 前言: 0x02 解決: 本篇博文可能會(huì)有一點(diǎn)點(diǎn)的超級(jí)呆 你是不是也會(huì)想: 使用pyrhon將指定文件夾位置里面的1.txt中數(shù)據(jù)全部刪除以后----然后再將參數(shù)req_text的值寫入到1.txt (小呆呆實(shí)錘) 區(qū)分一下: “w”模式: 使用 \\\"w\\\" 模式打開一個(gè)文件時(shí),如果該文件已經(jīng)存在,

    2024年02月09日
    瀏覽(21)
  • 【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第5練:爬蟲的翻頁(yè)操作+錯(cuò)誤情況過(guò)濾

    【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第5練:爬蟲的翻頁(yè)操作+錯(cuò)誤情況過(guò)濾

    目錄 一、翻頁(yè)分析: 二、代碼邏輯 1、入口程序修改 2、page參數(shù)傳入 三、完整代碼 1、運(yùn)行結(jié)果 2、錯(cuò)誤分析: 3、缺陷代碼: 4、完善邏輯: 5、完善代碼: (說(shuō)在前面,任何邏輯都有很多方法實(shí)現(xiàn),我們先從最笨的講起) (注:其中的cookie需要填自己的) 通過(guò)對(duì)比第一頁(yè)與

    2024年02月12日
    瀏覽(18)
  • 【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第8練:json數(shù)據(jù)的最小項(xiàng)提取

    【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第8練:json數(shù)據(jù)的最小項(xiàng)提取

    目錄 一、目標(biāo)1:爬取指定json中數(shù)據(jù) 二、目標(biāo)2:循環(huán)取json中數(shù)據(jù) 三、目標(biāo)3:提取每個(gè)數(shù)據(jù)中的某一項(xiàng) 四、網(wǎng)絡(luò)安全小圈子 爬取data里數(shù)據(jù) ? 核心代碼: (1)json.loads()方法可用于解析有效的JSON字符串并將其轉(zhuǎn)換為Python字典 (2)dirt1[\\\'data\\\']是打印json中的data部分 運(yùn)行結(jié)果:

    2024年02月13日
    瀏覽(18)
  • 【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第19練:使用python打開exe文件

    【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第19練:使用python打開exe文件

    目錄 一、目標(biāo)1:調(diào)用exe文件 二、目標(biāo)2:調(diào)用exe打開文件 1、subprocess?模塊允許在 Python 中啟動(dòng)一個(gè)新的進(jìn)程,并與其進(jìn)行交互 2、subprocess.run()?函數(shù)來(lái)啟動(dòng)exe文件 3、subprocess.run([\\\"文件路徑\\\"],check=True/) 4、check:如果程序返回一個(gè)非零的退出碼,subprocess.run()?函數(shù)就會(huì)拋出一個(gè)

    2024年02月11日
    瀏覽(17)
  • 【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第22練:數(shù)據(jù)包中參數(shù)提取與處理

    目錄 一、目標(biāo)1:GET數(shù)據(jù)包的處理 1、GET數(shù)據(jù)包中參數(shù)的提取 2、GET請(qǐng)求中 統(tǒng)計(jì)參數(shù)個(gè)數(shù) 二、目標(biāo)2:POST數(shù)據(jù)包的處理 1、post中參數(shù)個(gè)數(shù)的提取 2、POST請(qǐng)求中 統(tǒng)計(jì)參數(shù)個(gè)數(shù) (與GET類似,就不再做敘述了)

    2024年02月10日
    瀏覽(22)
  • 【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第21練:批量獲取文件夾中文件名

    目錄 一、目標(biāo)1:使用python爬取指定文件夾中的文件名 二、目標(biāo)2:在文件夾指定目錄打開命令行 方法一:使用 os 模塊 將 /path/to/folder 替換為實(shí)際的文件夾路徑。 os.listdir() 函數(shù)用于獲取指定文件夾中的文件名列表,然后可以遍歷列表并處理每個(gè)文件名 方法二:使用 glob 模塊

    2024年02月09日
    瀏覽(28)
  • 【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第10練:re的正則匹配、文件夾創(chuàng)建、圖片下載

    【網(wǎng)絡(luò)安全帶你練爬蟲-100練】第10練:re的正則匹配、文件夾創(chuàng)建、圖片下載

    目錄 一、目標(biāo)1:正則匹配圖片的URL 二、目標(biāo)2:創(chuàng)建文件夾 三、目標(biāo)3:保存圖片到test文件夾中 ?四、網(wǎng)絡(luò)安全小圈子 URL位置 我們可以找到img都在這個(gè)標(biāo)簽里面 ? ? 請(qǐng)求方法GET ? 提取URL位置 需要掌握的 目標(biāo)標(biāo)簽如下: 需要提取的內(nèi)容如下: (多加了一個(gè)為轉(zhuǎn)義字

    2024年02月13日
    瀏覽(19)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包