Web 文本文档的字数统计结果为 0

word count from web text document result in 0

我尝试了 Rasha Ashraf 文章“用 Python 抓取 EDGAR”中的 python 代码。 我猜他使用了现在在 python 3 中无效的 urllib2。 因此,我将其更改为urllib。

我可以带来以下埃德加网页。但是,无论我如何尝试修复代码,字数统计结果为0。请帮我解决这个问题。仅供参考,我在 URL 页面上手动检查,以便“ADDRESS”、“TYPE”和“transaction”分别出现 5 次、9 次和 49 次。尽管如此,我的错误 python 结果显示这三个词的结果为 0。

这里是我修改的Rasha Ashraf的python代码(只有urllib部分和web部分URL)。 原文URL包含大量文字内容。所以我把它改成一个更简单的网络页面。

import time
import csv
import sys

CIK = '0001018724'
Year= '2013'
string_match1= 'edgar/data/1018724/000112760220028651/0001127602-20-028651.txt'
url3= 'http://www.sec.gov/Archives/'+string_match1

import urllib.request
 
response3= urllib.request.urlopen(url3)
#output = response3.read()
#print(output)
words=  ['ADDRESS','TYPE', 'transaction']
count= {}
for elem in words:
    count[elem]= 0
    
for line in response3:
    elements= line.split()
    for word in words:
       count[word]= count[word] + elements.count(word)

print (CIK)
print (Year)
print (url3)
print (count)

=> 目前我的代码结果

0001018724

2013

http://www.sec.gov/Archives/edgar/data/1018724/000112760220028651/0001127602-20-028651.txt

{'ADDRESS': 0, 'TYPE': 0, 'transaction': 0}

要正确计算 3 个字符串(不是单词!)在文件中出现的次数,请尝试以下操作:

import requests
url = "http://www.sec.gov/Archives/edgar/data/1018724/000112760220028651/0001127602-20-028651.txt"
req = requests.get(url)

words = ['address','type','transaction']
filing = req.text
for word in words:
    print(word,': ',filing.lower().count(word))

输出:

address :  5
type :  9
transaction :  49