从 EDGAR 下载一个 txt 文件

Download a txt file from EDGAR

我想将此文件下载到我的本地驱动器: https://www.sec.gov/Archives/edgar/data/1556179/0001104659-20-000861.txt

这是我的代码:

import requests
import urllib
from bs4 import BeautifulSoup
import re
  
path=r"https://www.sec.gov/Archives/edgar/data/1556179/0001104659-20-000861.txt" 
r=requests.get(path, headers={"User-Agent": "b2g"})
content=r.content.decode('utf8')
soup=BeautifulSoup(content, "html5lib")
soup=str(soup)
lines=soup.split("\n")

dest_url=r"C://Users/YL/Downloads/a.txt"
fx=open(dest_url,'w')
for line in lines:
    fx.write(line + '\n')

错误信息如下:

那我应该怎么下载文件呢?非常感谢!

您的文件已经下载成功; BeautifulSoup 的解析似乎有问题。尝试更改解析器并以这种方式进行:

path=r"https://www.sec.gov/Archives/edgar/data/1556179/0001104659-20-000861.txt" 
r=requests.get(path, headers={"User-Agent": "b2g"})
soup=BeautifulSoup(r.text, "html.parser")
soup

你会看到文件就在那里。

下载没问题。问题是 str(soup) 没有明确定义,将 html5lib 抛入死循环。你可能是说

soup = soup.text

它(粗略地)从 BeatifulSoup 对象中提取实际可读文本。