#sec #query #api #query-builder #user-agent #env-var #edgar

sec_edgar

此crate提供查询SEC的EDGAR API的工具

7个版本 (稳定)

1.0.5 2023年9月28日
1.0.4 2023年7月12日
1.0.1 2023年6月17日
0.1.1 2023年6月14日
0.1.0 2023年6月14日

#1347 in 解析器实现

Download history 9/week @ 2024-03-30

每月54次下载

MIT许可证

53KB
1K SLoC

SEC EDGAR

此crate提供查询SEC的EDGAR API的工具。

用法

在您的环境变量中定义USER_AGENT。根据SEC的要求,它必须是以下格式

USER_AGENT="Sample Company Name AdminContact@<sample company domain>.com"

示例查询

use sec_edgar::{
    edgar::{edgar_client, get_feed_entries, get_feed_entry_content},
    edgar_query::{
        cik_query::CIKQuery,
        filing::FilingTypeOption::_10Q,
        edgar_query_builder::{BuilderInput, EdgarQueryBuilder}
   },
};

async fn some_func() {
    let ticker = "c";
    // To save yourself a trip, you can store the file locally and query it instead.
    // The file can be downloaded from [here](https://www.sec.gov/include/ticker.txt).
    // let cik_query = CIKQuery::new(Some("./ignore/ticker.txt"))
    let cik_query = CIKQuery::new(None)
        .unwrap()
        .get_cik(ticker)
        .await
        .unwrap();
    let query = EdgarQueryBuilder::new(&cik_query)
        .set_filing_type(BuilderInput::TypeTInput(_10Q))
        .build()
        .unwrap();
    let entries = get_feed_entries(edgar_client().unwrap(), query).await.unwrap();
    let filing_type = get_feed_entry_content(entries.first().unwrap())
        .unwrap()
        .filing_type
        .value;
}

依赖项

~13–27MB
~469K SLoC