項目截圖
一、項目簡介
本項目是一個基于 Django 框架的股票分紅數據爬蟲和展示系統。它可以從東方財富網站爬取股票分紅數據,并將數據存儲到 Django 數據庫中,同時提供數據查詢、導出和圖表展示功能。該系統為用戶提供了一個方便的平臺,用于獲取和分析股票分紅信息,無論是個人投資者還是金融研究人員,都可以利用該系統快速獲取所需的分紅數據,并進行深入的數據分析。
二、功能特點
2.1 數據爬取
系統通過編寫的爬蟲程序,能夠從東方財富網站上爬取股票分紅數據。爬蟲程序采用了分頁爬取的方式,確保能夠獲取到完整的數據。同時,為了避免被網站封禁,還設置了隨機的 User - Agent 和延遲時間,模擬真實用戶的訪問行為。
2.2 數據存儲
爬取到的數據會被存儲到 Django 數據庫中。在本項目中,使用的是 SQL Server 數據庫(可在 dividend_spider/settings.py
中配置),通過 Django 的 ORM(對象關系映射)機制,方便地進行數據的增刪改查操作。
2.3 數據查詢
用戶可以在系統中根據股票代碼、公司名稱、公告日期等條件進行數據查詢。系統提供了一個簡單易用的查詢表單,用戶可以根據自己的需求輸入相應的查詢條件,系統會快速返回符合條件的分紅數據。
2.4 數據導出
系統支持將查詢到的股票分紅數據導出為 CSV 文件。用戶只需訪問相應的鏈接,即可將數據以 CSV 格式保存到本地,方便后續的數據分析和處理。
2.5 圖表展示
系統還提供了圖表展示功能,用戶可以查看指定股票的分紅圖表。通過圖表,用戶可以直觀地了解股票的分紅趨勢、股息率變化等信息,為投資決策提供參考。
三、環境要求
3.1 編程語言
- Python 3.7+:Python 是一種高級編程語言,具有簡潔易讀、功能強大的特點,適合用于開發各種類型的應用程序。
3.2 主要框架和庫
- Django 2.2+:Django 是一個功能強大的 Python Web 框架,提供了豐富的功能和工具,如 ORM、路由系統、模板引擎等,能夠快速開發出高質量的 Web 應用程序。
- pandas:pandas 是一個用于數據處理和分析的 Python 庫,提供了高效的數據結構和數據操作方法,方便對爬取到的股票分紅數據進行處理和分析。
- matplotlib:matplotlib 是一個用于數據可視化的 Python 庫,能夠繪制各種類型的圖表,如折線圖、柱狀圖等,方便用戶直觀地展示和分析數據。
- django_select2:django_select2 是一個 Django 插件,用于提供美觀、易用的下拉選擇框,提升用戶體驗。
- django - crispy - forms:django - crispy - forms 是一個 Django 插件,用于美化表單,使表單的布局更加美觀和易用。
- django - import - export:django - import - export 是一個 Django 插件,用于實現數據的導入和導出功能,方便用戶管理數據。
四、安裝與配置
4.1 創建虛擬環境并激活
為了避免不同項目之間的依賴沖突,建議使用虛擬環境。執行以下命令創建虛擬環境:
python -m venv venv
激活虛擬環境:
- Linux/Mac:
source venv/bin/activate
- Windows:
venv\Scripts\activate
4.2 安裝依賴
在激活虛擬環境后,執行以下命令安裝項目所需的依賴:
pip install -r requirements.txt
4.3 配置數據庫
打開 dividend_spider/settings.py
文件,配置數據庫連接信息。例如,如果使用 SQL Server 數據庫,可以按照以下示例進行配置:
DATABASES = {'default': {'ENGINE': 'mssql','NAME': 'your_database_name','HOST': 'your_host','USER': 'your_user','PASSWORD': 'your_password','OPTIONS': {},}
}
4.5 運行數據庫遷移
執行以下命令運行數據庫遷移,創建相應的數據庫表:
python manage.py migrate
4.6 創建管理員賬戶
執行以下命令創建管理員賬戶,用于登錄 Django 后臺管理界面:
python manage.py createsuperuser
按照提示輸入用戶名、郵箱和密碼。
4.7 運行開發服務器
執行以下命令啟動 Django 開發服務器:
python manage.py runserver
默認情況下,服務器將在 http://localhost:8000
上運行。
五、使用說明
5.1 登錄后臺管理界面
打開瀏覽器,訪問 http://localhost:8000/admin
,使用之前創建的管理員賬戶登錄。在后臺管理界面中,你可以查看、添加、修改和刪除股票分紅數據。
5.2 查看股票分紅數據列表
訪問 http://localhost:8000/dividends/eastmoney/
,可以查看股票分紅數據列表。你可以在頁面上的查詢表單中輸入查詢條件,篩選出符合條件的分紅數據。
5.3 導出股票分紅數據到 CSV 文件
訪問 http://localhost:8000/dividends/to_csv/
,系統將自動將所有股票分紅數據導出為 CSV 文件,并下載到本地。
5.4 運行爬蟲程序
訪問 http://localhost:8000/dividends/run_crawler/
,在頁面上輸入起始時間、截止時間,并選擇是否僅爬取年報,然后點擊“運行”按鈕,系統將開始運行爬蟲程序,爬取指定時間段內的股票分紅數據。
5.5 查看指定股票的分紅圖表
訪問 http://localhost:8000/dividends/charts/<stock_code>/
,將 <stock_code>
替換為你要查看的股票代碼,即可查看該股票的分紅圖表。
六、注意事項
6.1 法律法規遵守
請確保在使用本項目時遵守相關法律法規,不得進行非法的數據爬取和使用行為。
6.2 使用目的限制
本項目僅供學習和研究使用,不應用于商業目的。在使用項目時,請確保你的行為符合相關規定。
6.3 數據準確性
由于股票市場數據的復雜性和變化性,系統獲取的數據可能存在一定的誤差。在進行投資決策時,請結合其他信息進行綜合分析。
七、許可證
本項目采用 MIT 許可證。有關詳細信息,請查看 LICENSE 文件。
八、總結
本股票分紅數據爬蟲和展示系統為用戶提供了一個便捷的方式來獲取和分析股票分紅數據。通過簡單的安裝和配置步驟,用戶可以快速搭建起自己的系統,并使用系統提供的各種功能進行數據查詢、導出和圖表展示。在使用過程中,用戶需要注意遵守相關法律法規,確保數據的合法使用。希望本系統能夠為用戶的投資研究提供一定的幫助。
源碼/演示視頻獲取方式
需要成品,加我的時候,記得把本頁面標題截圖發下我,方便查找相應的源代碼和演示視頻。
文章最下方名片聯系我即可~