【问题标题】:Web Scraping Risk Factors from 10-K EDGAR来自 10-K EDGAR 的网页抓取风险因素
【发布时间】:2020-06-17 13:31:05
【问题描述】:

是否有人尝试使用 BeautifulSoup 或任何其他网络抓取库以及使用正则表达式从风险因素部分(即公司的 EDGAR 10-K 文件中的项目 1A)中提取个体风险因素。

如果你能提供 github 或伪代码,或者至少提供一些帮助,我可以继续前进。

编辑: 10-Ks的一些例子

  1. https://www.sec.gov/Archives/edgar/data/1350653/000156459018005156/atec-10k_20171231.htm
  2. https://www.sec.gov/Archives/edgar/data/1591890/000149315218003887/form10-k.htm
  3. https://www.sec.gov/Archives/edgar/data/750574/000119312518080325/d472492d10k.htm
  4. https://www.sec.gov/Archives/edgar/data/773840/000093041318000292/c89913_10k.htm
  5. https://www.sec.gov/Archives/edgar/data/12927/000001292718000007/a201712dec3110k.htm

我给出了不止一个示例,因为 HTML 代码在所有示例中都非常随机,以至于使用单一类型的 RegEx 很困难。

【问题讨论】:

  • 你能分享包含Section 1A的10-K填充样本的URL吗?
  • 我已经编辑了问题请检查。
  • 需要提取哪些信息?将整个 1A 部分作为文本?
  • 是的,项目 1A 之间的文本。第 1B 项的风险因素。并且中间的文本被标题(可能是粗体或斜体)分成几部分,所有这些标题都有不同的主题。所以我需要将所有这些部分提取到不同的文本文件中。

标签: html python-3.x regex web-scraping beautifulsoup


【解决方案1】:

我花了很多时间尝试使用 REGEX 开发一种方法,但取得了一些有限的成功。问题是提交给 SEC 的底层 XML 没有严格遵守标准,并且许多报告偏离了所使用的报告格式。有时他们会使用大写字母、大写字母或使用不同的字母和数字组合来描述部分。有时他们会包含介绍性段落,为他们即将列出的风险提供额外的背景信息。有很多随机因素会干扰为文档结构建立任何类型的模式的能力,因此目前由人来解析这些模式比机器更有效。但是,有成千上万的文件,这使得这是一个非常乏味、昂贵和冗长的过程。一种可能有用的方法是 Amazon 的 Mechanical Turk,但这可能仍需要大量的前期开发时间,并且可能导致成本限制,除非项目资金充足。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-21
    • 1970-01-01
    • 2013-07-23
    • 1970-01-01
    • 1970-01-01
    • 2021-01-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多