上海证券交易所上市公司定期报告下载,项目地址 https://github.com/thunderhit/shreport
Project description
一、简介
上海证券交易所上市公司定期报告下载,项目地址 https://github.com/thunderhit/shreport
能:
-
获取上证交易所所有公司目录
-
上市公司历年报告(季报、半年报、年报)
使用演示视频 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: 数据存储所在文件夹的路径,建议使用相对路径
四、快速入门
一定要先获得cookies后才能使用下面的所有代码,这里先直接看代码使用情况,cookies获取可见文档
五、获取cookies**
4.1 获取上证交易所上市公司目录
from shreport import SH
cookies = {"Cookie": '您的cookies'}
sh = SH(cookies)
df = sh.companys()
#将查询结果存储
#df.to_excel('上证交易所上市公司名录.xlsx')
#显示前5条数据
df.head()
Run
name | code |
---|---|
浦发银行 | 600000 |
白云机场 | 600004 |
东风汽车 | 600006 |
中国国贸 | 600007 |
首创股份 | 600008 |
4.2下载某公司所有定期报告文件
绝大多数报告文件名格式
文件 | 文件名 | 例子 |
---|---|---|
季度报 | 公司代码-年份-数字 | 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)
#获取当前代码所在的文件夹路径
cwd = Path().cwd()
#以浦发银行为例股票代码600000
sh.download(code='600000', savepath=cwd)
Run
=======请耐心等待,正在获取600000数据
=======准备获取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 获取某公司的所有定期报告相关信息
如果暂时不想下载定期报告pdf文件,可以可以先获取某公司的
- 股票代码
- 报告类型
- 年份
- 定期报告披露日期
- 定期报告pdf下载链接
结果返回DataFrame
from shreport import SH
cookies = {"Cookie": '您的cookies'}
sh = SH(cookies)
#获取浦发银行披露信息
df = sh.disclosure(code='600000')
#存储数据
#df.to_excel('600000.xlsx')
#前5条信息
df.head()
Run
company | code | type | year | date | |
---|---|---|---|---|---|
浦发银行 | 600000 | 半年报 | 2000 | 2000-07-28 | http://www.sse.com.cn/disclosure/listedinfo/announcement/c/600000_2000_1.pdf |
浦发银行 | 600000 | 第三季度季报 | 2002 | 2002-10-30 | http://www.sse.com.cn/disclosure/listedinfo/announcement/c/2002-10-30/600000_2002_3.pdf |
浦发银行 | 600000 | 半年报 | 2002 | 2002-08-17 | http://www.sse.com.cn/disclosure/listedinfo/announcement/c/2002-08-17/600000_2002_z.pdf |
浦发银行 | 600000 | 第一季度季报 | 2002 | 2002-04-27 | http://www.sse.com.cn/disclosure/listedinfo/announcement/c/600000_2002_1.pdf |
浦发银行 | 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)
#以浦发银行为例股票代码600000
urls = sh.pdfurls(code='600000')
urls
Run
=======准备获取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后才能使用所有的代码,获取方法
- 浏览器访问http://www.sse.com.cn/disclosure/overview/
- 按F12(mac按option+command+I)打开开发者工具的Network
- 刷新网页,耐心寻找与www.sse.com.cn有关的任意网址,找到cookies
如果
如果您是经管人文社科专业背景,编程小白,面临海量文本数据采集和处理分析艰巨任务,个人建议学习《python网络爬虫与文本数据分析》视频课。作为文科生,一样也是从两眼一抹黑开始,这门课程是用五年时间凝缩出来的。自认为讲的很通俗易懂o( ̄︶ ̄)o,
- python入门
- 网络爬虫
- 数据读取
- 文本分析入门
- 机器学习与文本分析
- 文本分析在经管研究中的应用
感兴趣的童鞋不妨 戳一下《python网络爬虫与文本数据分析》进来看看~
更多
-
公众号:大邓和他的python
-
支持一下
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
shreport-0.1.3-py3-none-any.whl
(20.1 kB
view details)
File details
Details for the file shreport-0.1.3.macosx-10.9-x86_64.tar.gz
.
File metadata
- Download URL: shreport-0.1.3.macosx-10.9-x86_64.tar.gz
- Upload date:
- Size: 41.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c40fe1ecc0b1f3562cfb15a50af8209bf33fa9d0b9837fbb2a764c78d6dc1cf9 |
|
MD5 | 1f8fbb9a01b9fc6773ec8f68c5123e7f |
|
BLAKE2b-256 | c975f334946ab3561f054dadaf16691f2af821fc5b1197cb4ed8e631da42765e |
File details
Details for the file shreport-0.1.3-py3-none-any.whl
.
File metadata
- Download URL: shreport-0.1.3-py3-none-any.whl
- Upload date:
- Size: 20.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cf3a651ea4c174b1cc7c110dd10309b648e19f3edee29e05b99679ed3c259e95 |
|
MD5 | ed87990b52071c7c4e7f382e29010da6 |
|
BLAKE2b-256 | e6e844867da76d75d4d823a875e5c96dcefecab4935602df3233e2b15404291f |