用Python下載上海證券交易所上市公司所有定期報告

一、簡介

上海證券交易所上市公司定期報告下載,項(xiàng)目地址 https://github.com/thunderhit/shreport

能:

  1. 獲取上證交易所所有公司目錄

  2. 上市公司歷年報告(季報、半年報、年報)

使用演示視頻
B站:如何用Python批量下載上交所上市公司的年報pdf文件

二、安裝

pip install shreport

三、功能說明

companys()
  上證所有上市公司名錄,公司名及股票代碼
  :return: 返回DataFrame

pdfurls(code)
  僅獲取定期報告pdf下載鏈接
  :param code:  股票代碼
  :return: 年報pdf鏈接
  
disclosure(self, code)
   獲得該公司的股票代碼、報告類型、年份、定期報告披露日期、定期報告pdf下載鏈接, 返回DataFrame
  :param code:  股票代碼
  
  
download(code, savepath)
  下載該公司(code)的所有季度報告、半年報、年報pdf文件
  :param code:  上市公司股票代碼
  :param savepath:  數(shù)據(jù)存儲所在文件夾的路徑,建議使用相對路徑
 

四、快速入門

一定要先獲得cookies后才能使用下面的所有代碼,這里先直接看代碼使用情況,cookies獲取可見文檔

五、獲取cookies**

4.1 獲取上證交易所上市公司目錄

from shreport import SH

cookies = {"Cookie": '您的cookies'}
sh = SH(cookies)
df = sh.companys()

#將查詢結(jié)果存儲
#df.to_excel('上證交易所上市公司名錄.xlsx')

#顯示前5條數(shù)據(jù)
df.head()

Run

name code
浦發(fā)銀行 600000
白云機(jī)場 600004
東風(fēng)汽車 600006
中國國貿(mào) 600007
首創(chuàng)股份 600008

4.2下載某公司所有定期報告文件

絕大多數(shù)報告文件名格式

文件 文件名 例子
季度報 公司代碼-年份-數(shù)字 600000-2000-1.pdf、600000-2000-3.pdf
半年報 公司代碼-年份-z 600000-2000-z.pdf
年報 公司代碼-年份-n 600000-2000-n.pdf

代碼

from pathlib import Path
from shreport import SH

cookies = {"Cookie": '您的cookies'}
sh = SH(cookies)
#獲取當(dāng)前代碼所在的文件夾路徑
cwd = Path().cwd() 
#以浦發(fā)銀行為例股票代碼600000
sh.download(code='600000', savepath=cwd)

Run

=======請耐心等待,正在獲取600000數(shù)據(jù)
=======準(zhǔn)備獲取600000年報文件鏈接========
=======年報文件鏈接已獲取完畢=============
已成功下載600000_2000_1.pdf
已成功下載600000_2000_z.pdf
已成功下載600000_2000_3.pdf
已成功下載600000_2000_n.pdf
......
已成功下載600000_2019_1.pdf
已成功下載600000_2019_z.pdf
已成功下載600000_2019_3.pdf
已成功下載600000_2000_n.pdf

4.3 獲取某公司的所有定期報告相關(guān)信息

如果暫時不想下載定期報告pdf文件,可以可以先獲取某公司的

  • 股票代碼
  • 報告類型
  • 年份
  • 定期報告披露日期
  • 定期報告pdf下載鏈接

結(jié)果返回DataFrame

from shreport import SH

cookies = {"Cookie": '您的cookies'}
sh = SH(cookies)


#獲取浦發(fā)銀行披露信息
df = sh.disclosure(code='600000')

#存儲數(shù)據(jù)
#df.to_excel('600000.xlsx')

#前5條信息
df.head()

Run

company code type year date pdf
浦發(fā)銀行 600000 半年報 2000 2000-07-28 http://www.sse.com.cn/disclosure/listedinfo/announcement/c/600000_2000_1.pdf
浦發(fā)銀行 600000 第三季度季報 2002 2002-10-30 http://www.sse.com.cn/disclosure/listedinfo/announcement/c/2002-10-30/600000_2002_3.pdf
浦發(fā)銀行 600000 半年報 2002 2002-08-17 http://www.sse.com.cn/disclosure/listedinfo/announcement/c/2002-08-17/600000_2002_z.pdf
浦發(fā)銀行 600000 第一季度季報 2002 2002-04-27 http://www.sse.com.cn/disclosure/listedinfo/announcement/c/600000_2002_1.pdf
浦發(fā)銀行 600000 年報 2001 2002-03-21 http://www.sse.com.cn/disclosure/listedinfo/announcement/c/600000_2001_n.pdf

4.4 獲取某公司的所有定期報告url

如果暫時不想下載定期報告pdf文件,可以只得到該公司所有的報告文件鏈接

from shreport import SH

cookies = {"Cookie": '您的cookies'}
sh = SH(cookies)
#以浦發(fā)銀行為例股票代碼600000
urls = sh.pdfurls(code='600000')
urls

Run

=======準(zhǔn)備獲取600000年報文件鏈接========
=======年報文件鏈接已獲取完畢=============
['http://www.sse.com.cn/disclosure/listedinfo/announcement/c/600000_2000_1.pdf',
 'http://www.sse.com.cn/disclosure/listedinfo/announcement/c/2002-10-30/600000_2002_3.pdf',
 'http://www.sse.com.cn/disclosure/listedinfo/announcement/c/2002-08-17/600000_2002_z.pdf',
 .......
 'http://www.sse.com.cn/disclosure/listedinfo/announcement/c/600000_2002_1.pdf',

 'http://www.sse.com.cn/disclosure/listedinfo/announcement/c/2019-03-26/600000_2018_n.pdf',
 'http://www.sse.com.cn/disclosure/listedinfo/announcement/c/2018-10-31/600000_2018_3.pdf',
 'http://www.sse.com.cn/disclosure/listedinfo/announcement/c/2018-08-30/600000_2018_z.pdf',
 'http://www.sse.com.cn/disclosure/listedinfo/announcement/c/2018-04-28/600000_2017_n.pdf',
 'http://www.sse.com.cn/disclosure/listedinfo/announcement/c/2018-04-28/600000_2018_1.pdf']

五、獲取cookies

一定要先獲得cookies后才能使用所有的代碼,獲取方法

  1. 瀏覽器訪問http://www.sse.com.cn/disclosure/overview/
  2. 按F12(mac按option+command+I)打開開發(fā)者工具的Network
  3. 刷新網(wǎng)頁,耐心尋找與www.sse.com.cn有關(guān)的任意網(wǎng)址,找到cookies

[圖片上傳失敗...(image-e1babe-1587878203272)]

如果

如果您是經(jīng)管人文社科專業(yè)背景,編程小白,面臨海量文本數(shù)據(jù)采集和處理分析艱巨任務(wù),個人建議學(xué)習(xí)《python網(wǎng)絡(luò)爬蟲與文本數(shù)據(jù)分析》視頻課。作為文科生,一樣也是從兩眼一抹黑開始,這門課程是用五年時間凝縮出來的。自認(rèn)為講的很通俗易懂o( ̄︶ ̄)o,

  • python入門
  • 網(wǎng)絡(luò)爬蟲
  • 數(shù)據(jù)讀取
  • 文本分析入門
  • 機(jī)器學(xué)習(xí)與文本分析
  • 文本分析在經(jīng)管研究中的應(yīng)用

感興趣的童鞋不妨 戳一下《python網(wǎng)絡(luò)爬蟲與文本數(shù)據(jù)分析》進(jìn)來看看~

更多

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 公司年報在哪里下載呢? A股港股年報下載網(wǎng)址整理,如果還有推薦可以在留言區(qū)添加喲~ 1.上海上市的公司可以在上海交...
    荔枝_LH閱讀 30,568評論 0 5
  • 來源:投行浩浩向前沖 文章以作者自己做的一個小公募項(xiàng)目為例細(xì)致的講解公司債承做的步驟,分別為編制材料階段、申報階段...
    授米閱讀 15,687評論 0 6
  • 首先說下,找各行各業(yè)的行業(yè)報告的用途是什么? 如果是for公司的戰(zhàn)略決策,或者產(chǎn)品方向,或者市場策略,或者產(chǎn)品設(shè)計...
    黑曼巴yk閱讀 791評論 0 4
  • 車禍?zhǔn)陙砟阋恢蹦С治?。我得意你笑著陪我;我生氣你笑著讓我。只要你在我心安?媽曾多次想把你趕走,我都以死逼她...
    燃星閱讀 822評論 9 21
  • 今天是什么日子 起床:9:55 就寢:1:30 天氣:晴朗 心情:美美噠 紀(jì)念日:善待地球日 任務(wù)清單 昨日完成的...
    書夢繪影閱讀 173評論 0 10

友情鏈接更多精彩內(nèi)容