0

我正在尝试使用 Excel vba 从 SEC 网站下载 SEC 文件(10-K、8-K 等)。我正在使用 getelementsbytagname 来识别归档的 url。但是,当我使用“URLDownloadToFile”私有函数时,我无法下载文件,而是获得了不包含任何归档文本的“Inline XBRL Viewer.htm”文件。下面是我正在使用的代码:

htmlCol3 = htmlDoc1.getElementsByTagName("a")
For Each htmlInput3 In htmlCol3
If Left$(htmlInput3, 36) = "https://www.sec.gov/ix?doc=/Archives" Then
URL1 = Trim(htmlInput3)
buf = Split(URL1, ".")
ext = buf(UBound(buf))
If dt >= rptdt Then
strSavePath = FOL & "\" & CIK & "_" & FIL & "_" & str1 & "." & ext
ret = URLDownloadToFile(0, URL1, strSavePath, 0, 0)

以下是我正在使用的下载文件功能:

Private Declare Function URLDownloadToFile Lib "urlmon" Alias _
"URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal _
szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long

我正在尝试从此网页的顶部表格中的 Document 列中获取第一个 url:

https://www.sec.gov/Archives/edgar/data/769397/000076939719000016/0000769397-19-000016-index.htm

4

1 回答 1

1

要获得实际的归档,请删除该ix?doc=位,以便您有一个开头的 URLhttps://www.sec.gov/Archives/...

例如

URL1 = Replace(URL1, "https://www.sec.gov/ix?doc=", "https://www.sec.gov")
于 2019-05-21T08:14:01.330 回答