使用 SEC Edgar Logfile 数据库 // 大型数据库的 ZIP 文件提取和存储
Posted
技术标签:
【中文标题】使用 SEC Edgar Logfile 数据库 // 大型数据库的 ZIP 文件提取和存储【英文标题】:Working with the SEC Edgar Logfile database // ZIP file extraction and storing of large databases 【发布时间】:2021-09-10 08:00:57 【问题描述】:使用 SEC Edgar Lofgile 数据库时,我面临着一些挑战。 (https://www.sec.gov/dera/data/edgar-log-file-data-set.html)
我的工作是一步一步下载数据,然后将各种 IP 地址分配给公司。通过结合使用 WRDS、ARIN Bulk Whois 数据库和字符串匹配,我能够将公司与 IP 地址进行匹配。
各个数据集存储在一个 zip 文件中。目前我使用如下代码解压文件,速度慢,占用内存大:
import pandas as pd
import requests
import zipfile
from io import BytesIO
#last day of the database
html = 'http://www.sec.gov/dera/data/Public-EDGAR-log-file-data/2017/Qtr2/log20170630.zip'
def get_df(html):
#open zipfile via requests/BytesIO/ZipFile
r_zip = requests.get(html)
zip_file = zipfile.ZipFile(BytesIO(r_zip.content))
files = zip_file.namelist()
#read zip as DataFrame
with zip_file.open(files[0]) as log:
data = pd.read_csv(log)
提取后,我分析记录(groupby 公司等)并将结果保存在 csv 文件中。但是,我的分析结果仍然很大,以至于很难下载整个 SEC Edgar 日志文件的数据库。
-
有谁知道更快、更省内存的下载方式
数据库?
有谁知道如何保存
结果,以便可以使用整个数据库?
【问题讨论】:
【参考方案1】:提取每个csv文件后,将数据上传到SQL中,然后删除csv文件。
【讨论】:
答案很简短,这更像是一个提示,而不是一个正确和完整的答案 这没有提供问题的答案。一旦你有足够的reputation,你就可以comment on any post;相反,provide answers that don't require clarification from the asker。 - From Review以上是关于使用 SEC Edgar Logfile 数据库 // 大型数据库的 ZIP 文件提取和存储的主要内容,如果未能解决你的问题,请参考以下文章
SEC EDGAR 13F 源 HTTPError:HTTP 错误 403:禁止
活动类 yodgobekkomilov.edgar.com.githubapi/yodgobekkomilov.edgar.com.githubapi.SearchActivity 不存在