为什么我的代码没有返回正确的值?

时间:2019-04-25 04:33:06

标签: python

我希望我的代码能输出剩余的库存,但是当我运行我的代码时,我会得到以下输出:<function get_sizes_in_stock at 0x10572f158>

import select

import requests
from bs4 import BeautifulSoup as bs
import random

session = requests.session()


def get_sizes_in_stock():
    global session
    endpoint = 'https://www.supremenewyork.com/shop/tops-sweaters/v4j0kn2qc/vtl376a1b'
    response = session.get(endpoint)

    soup = bs(response.txt, 'html.parser')

    div = soup.find("select", {"name": "s"})
    div = soup.find("select", {"name": "s"})
    all_sizes = select.find_all("option")

    sizes_in_stock = []
    for size in all_sizes:
        if "false" not in size["class"]:
            size_id = size["value"]
        sizes_in_stock.append(size_id.split("_")[1])

    return sizes_in_stock


print(get_sizes_in_stock)

我希望代码输出剩余的库存。应该输出中和大

2 个答案:

答案 0 :(得分:2)

您应该呼叫print(get_sizes_in_stock()),而不是print(get_sizes_in_stock)get_sizes_in_stock返回函数对象,而get_sizes_in_stock()调用不带任何参数的函数。

答案 1 :(得分:0)

所有方法都是python中的对象。

print(get_sizes_in_stock)

返回功能对象。我认为您的意思是调用该函数:

print(get_sizes_in_stock())
相关问题