首页 > 解决方案 > 打印作业出现问题

问题描述

我得到了一个代码,在解决了其中的缩进问题后,它运行没有错误,但是现在我无法将代码打印到列表中。

from bs4 import BeautifulSoup as soup
from urllib.request import urlopen as uReq
import requests

symbol = 'AAPL'
url = "https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=" + symbol + "&type=&dateb=&owner=exclude&start=0&count=100&output=atom"
uClient = uReq(url)
page_html = uClient.read()
uClient.close()
html = soup(page_html, 'html.parser')
entries = html.findAll("entry")

shouldContinue = True
link = ""
for entry in entries:

    if shouldContinue and (
            entry.find("category")["term"].lower() == "10-k" or entry.find("category")["term"].lower() == "10-q" or
            entry.find("category")["term"].lower() == "20-f"):


        firstUrl = entry.find("link")["href"]

        uClientFirstUrl = uReq(firstUrl)
        page_html_firstUrl = uClientFirstUrl.read()
        uClientFirstUrl.close()
        htmlFirstUrl = soup(page_html_firstUrl, 'html.parser')

        tds = htmlFirstUrl.findAll("table")[1].findAll("td")
        foundtd = False
        for td in tds:
            if foundtd == True:
                link = "https://www.sec.gov" + td.find("a")["href"]
                foundtd = False
            if "xbrl instance" in td.text.lower():
                foundtd = True

            shouldContinue = False


def getCash(url, symbol):
    uClient = uReq(url)
    page_html = uClient.read()
    uClient.close()
    xml = soup(page_html, 'xml')

    cash = xml.findAll("us-gaap:CashAndCashEquivalentsAtCarryingValue")
    if len(cash) == 0:
        cash = xml.findAll("ifrs-full:Cash")
        if len(cash) == 0:
            cash = xml.findAll("us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents")
            if len(cash) == 0:
                cash = xml.findAll("us-gaap:Cash")

    return cash

    print(getCash)

getCash(url, symbol)

我已经尝试打印作业,以及调用该方法但没有任何成功。方向感将不胜感激。谢谢你。

标签: python-3.x

解决方案


正如我在上面的评论中提到的:

您期望从中获得什么效果print(getCash)?如果您希望它打印getCash()函数的返回值,请将其删除(它什么也不做),然后将您的getCash(url, symbol)调用包装在一个print()函数中。

基本上,这样做:

print(getCash(url, symbol))

推荐阅读