Wednesday, November 27, 2024

用Python搭配BeautifulSoup取得台股大盤當日的漲幅

廢話不多說,最近利用Python+BeautifulSoup去爬台股大盤的靜態資料,過程用ChatGPT幫我除錯。


程式碼:

#!/usr/bin/env python3


import requests

from bs4 import BeautifulSoup


# 設定 HTTP 標頭

headers = {

    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'

}


# 獲取數據

def get_tw_value():

    url = 'https://statementdog.com/taiex'  # 您需要的 URL

    req = requests.get(url, headers=headers)


    # 解析 HTML

    soup = BeautifulSoup(req.text, 'html.parser')


    # 檢查 HTML 結構,看看有哪些 <div> 標籤

    #print(soup.prettify())  # 印出整個 HTML 結構以供檢查


    # 使用提供的 class 名稱來找到 <div> 標籤

    try:

        close_value_element = soup.find('div', class_='market-summary-item-value')

        if close_value_element:

            close_value = close_value_element.text.strip()  # 提取文本並去除多餘的空白

            print(f"當前加權指數: {close_value}")

        else:

            print("未找到指定的 <div> 標籤。")


        increase_value_element = soup.find('div', class_='market-summary-item-misc')

        if increase_value_element:

            increase_value = increase_value_element.text.strip()  # 提取文本並去除多餘的空白

            print(f"當前漲幅: {increase_value}")

        else:

            print("未找到指定的 <div> 標籤。")

    except Exception as e:

        print(f"發生錯誤: {e}")


# 主程式

if __name__ == "__main__":

    get_tw_value()  # 獲取 <div> 標籤中的值


No comments: