Version 4.0.0
This is a major breaking release. Please see the v4 migration guide for information on how to upgrade and adapt your existing codebase to the new package version.
Added
- The SEC Edgar Full-Text Search API is now used to fetch filing download URLs. This approach replaces the existing fragile scraping and ATOM RSS implementation used in existing versions of this package.
- Note: this API only allows for fetching filings after December 1, 2000.
- Added support for searching and downloading filings via a
query
kwarg:
dl = Downloader()
# Download all Apple proxy statements that contain the word "antitrust"
dl.get("DEF 14A", "AAPL", query="antitrust")
- Filing details, whose extensions vary based on filing type, are now downloaded in addition to the full submission
txt
file. See the migration guide for information on the revamped folder structure. - Added the ability to download all available SEC filings. Please see the README for a full list of all supported filings.
Path
objects can now be used to specify adownload_folder
when constructing aDownloader
object.- Added type annotations throughout the codebase.
Changed
- The current working directory is now used as the default download location. Custom paths can be specified when constructing
Downloader
objects. - All arguments passed to
dl.get()
other thanfiling
andticker_or_cik
must be used with a keyword:
dl = Downloader()
dl.get(
"10-K",
"AAPL",
# All other arguments must be used with a keyword
amount=1,
after="2019-01-01",
before="2021-01-01",
include_amends=True,
download_details=True,
query="sample query"
)
- The
after_date
,before_date
, andnum_filings_to_download
kwargs have been renamed toafter
,before
, andamount
, respectively.