欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python爬蟲Xpath定位數據的兩種方法

 更新時間:2022年07月07日 09:12:15   作者:生活明朗,萬物可愛,人間值得,未來可期  
這篇文章主要介紹了Python爬蟲Xpath定位數據的方法,第一種方法直接右鍵,將文章路徑復制下來點擊Copy?full?Xpath,方法二使用@制定標簽屬性,搜索指定位置,每種方法給大家介紹的非常詳細,需要的朋友可以參考下

方法一:直接右鍵,將文章路徑復制下來點擊Copy full Xpath

使用selenium+lxml中的etree進行配合使用,使用etree解析html網頁

import requests
from lxml import etree
import time
import socket
import csv
from selenium import webdriver
from configparser import ConfigParser
from selenium.webdriver import Chrome
from selenium.webdriver import ChromeOptions
#禁止圖片和css加載
chrome_options = webdriver.ChromeOptions()
prefs = {"profile.managed_default_content_settings.images": 2}
chrome_options.add_experimental_option("prefs", prefs)
option = ChromeOptions()
option.add_experimental_option('excludeSwitches', ['enable-automation'])
# 如果想加載圖片,就把下面第二句話改第一句話,刪掉上面的“禁止圖片和css加載”部分
# wb = Chrome(options=option)
wb=webdriver.Chrome(options=chrome_options)
#最大化窗口、輸入網址、等待至網頁加載完成(防止元素還沒加載出來就開始爬了這樣自然爬不到數據。如果一直加載不出就等10秒,加載好了就立刻結束等待)
wb.maximize_window()
wb.get("https://www.tianyancha.com/")
wb.implicitly_wait(5)

然后獲取網頁數據,這里表明哪怕后面出錯了,仍然可以延續(xù)wb的位置繼續(xù)控制瀏覽器

data = wb.page_source
time.sleep(3)
data = wb.page_source
time.sleep(3)
page_all.append(data)
html = etree.HTML(data)
company = html.xpath('/html/body/div/div/div[2]/div/div[1]/div[1]/div[3]/div[1]/div[1]/div[1]/h1/text()')
print(company )

在這里插入圖片描述

方法二:使用@制定標簽屬性,搜索指定位置

這樣的好處就是,對于批量處理的網頁,有的標簽位置不在同一個地方,那么我們就是不使用全Xpath路徑,而使用相對路徑,用@制定某種屬性的標簽,下載相關數據

"http://div[@class='mainArea']/ul/li"

使用//div[@class=‘mainArea’]的意思是:從根部(//)查找 class值為 mainArea的Node.

所以,那么就很簡單了 //某元素[@class=‘CLASS值’]

大家可以按照這個公式來查找 class的元素了。

剩下的 /ul/li 表示的是,繼續(xù)查找 class='mainArea’的div包括的ul元素下面的li 節(jié)點集合。

到此這篇關于Python爬蟲Xpath定位數據的方法的文章就介紹到這了,更多相關Python爬蟲Xpath定位數據內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • python DataFrame 取差集實例

    python DataFrame 取差集實例

    今天小編就為大家分享一篇python DataFrame 取差集實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • python 安裝庫幾種方法之cmd,anaconda,pycharm詳解

    python 安裝庫幾種方法之cmd,anaconda,pycharm詳解

    在python項目開發(fā)的過程中,需要安裝大大小小的庫,本文會提供幾種安裝庫的方法,通過實例截圖給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下
    2020-04-04
  • 淺談Python程序與C++程序的聯合使用

    淺談Python程序與C++程序的聯合使用

    這篇文章主要介紹了淺談Python程序與C++程序的聯合使用,主要包括6中方案,需要的朋友可以參考下
    2015-04-04
  • Django中的cookie和session

    Django中的cookie和session

    這篇文章主要介紹了Django中的cookie和session實例詳解,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-08-08
  • 詳解爬蟲被封的問題

    詳解爬蟲被封的問題

    這篇文章主要介紹了爬蟲被封的問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • Tensorflow之構建自己的圖片數據集TFrecords的方法

    Tensorflow之構建自己的圖片數據集TFrecords的方法

    本篇文章主要介紹了Tensorflow之構建自己的圖片數據集TFrecords的方法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • 關于python中readlines函數的參數hint的相關知識總結

    關于python中readlines函數的參數hint的相關知識總結

    今天給大家?guī)淼氖顷P于Python函數的相關知識,文章圍繞著python中readlines函數的參數hint展開,文中有非常詳細的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • python實現滑雪游戲

    python實現滑雪游戲

    這篇文章主要為大家詳細介紹了python實現滑雪游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • Python為何不能用可變對象作為默認參數的值

    Python為何不能用可變對象作為默認參數的值

    這篇文章主要介紹了Python為何不能用可變對象作為默認參數的值,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-07-07
  • PyTorch數據讀取的實現示例

    PyTorch數據讀取的實現示例

    這篇文章主要介紹了PyTorch數據讀取的實現示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03

最新評論