logo
Loading...

如何從網頁畫面上找到需要的資料對應的 HTML 物件 - Cupoy

history_table = history.find(name='table', attrs={...

pycrawler,pycrawler-d15

如何從網頁畫面上找到需要的資料對應的 HTML 物件

2020/01/02 下午 08:48
Python網路爬蟲討論版
邱筑
觀看數:11
回答數:2
收藏數:0
pycrawler
pycrawler-d15

history_table = history.find(name='table', attrs={'title':'歷史本行營業時間牌告匯率'}).find(name='tbody').find_all(name='tr')

的 attrs={'title':'歷史本行營業時間牌告匯率'}) 用GOOGLE瀏覽器 如何找到的???


要如何知道 資料是在 attrs={'title':'歷史本行營業時間牌告匯率'}) 下面???

回答列表

  • 2020/01/03 下午 00:16
    張維元 (WeiYuan)
    贊同數:4
    不贊同數:0
    留言數:1

    你的問題是「如何從網頁畫面上找到你需要的資料對應的 HTML 物件在哪裡」嗎?


    1. 在 Google Chrome 瀏覽器上右鍵,點選檢查叫出開發者工具

    2. 切換到 Elements 區塊,顯示出目前的 HTML 程式碼

    3. 點選開發者工具左上角的「點選指標」圖示,變為藍色表示點選模式

    4. 此時滑鼠可以在網頁上任意移動,Elements 區塊會即時切換到選取範圍的 HTML 物件

    5. 滑鼠點擊後進入已選取模式,Elements 會將被選取的 HTML 物件 固定住


    接下來就可以從被固定的 HTML 物件中,定義想要的物件長怎樣?該怎麼定位?


    1. 先看一下是什麼標籤(例如:<p>、<div>、<img> ...),再加上 class 或是 id 進行限縮

    2. 轉換成 Python BeautifulSoup 的語法:


    ```

    d = soup.find('標籤名稱', id='id 是什麼', class_='class 是什麼', attrs={'其他條件一': 'XXX', ... })

    ```


    3. 從取得的物件中拉出需要的資料


    ```

    d.text() # HTML 物件的文字內容部分

    d['屬性名稱'] # HTML 物件的屬性資料,例如 class 名稱、圖片的 src 屬性 ...

    ```

  • 2020/01/03 下午 00:49
    張維元 (WeiYuan)
    贊同數:3
    不贊同數:0
    留言數:0