为了账号安全,请及时绑定邮箱和手机立即绑定

如何导出变量形式 __init__ 并在其他函数中使用

如何导出变量形式 __init__ 并在其他函数中使用

PHP
泛舟湖上清波郎朗 2023-11-09 15:45:30
我有一个程序,它采用 Flipkart 产品链接并使用不同的方法输出其结果。这是我的代码:def __init__(self, link):        res = requests.get(link)        soup = BeautifulSoup(res.text, 'lxml')我们只是想提取这个 soup 变量,以便其他函数可以访问该变量,这样每次我们请求价格、标题等任何方法时,我们就不需要一次又一次地请求页面并减慢程序速度。对于提供的答案,它产生了空白,但实际上它应该返回 $....def __init__(self, link):        res = requests.get(link)        soup = BeautifulSoup(res.text, 'lxml')        self.soup = soupdef prices(self):        prices = self.soup.find_all(text=re.compile('₹'))        print(prices[0])
查看完整描述

1 回答

?
慕哥9229398

TA贡献1877条经验 获得超6个赞

将其保存为属性,然后可以在其他方法中使用它


def __init__(self, link):

        res = requests.get(link)

        soup = BeautifulSoup(res.text, 'lxml')

        self.soup = soup


def foo(self, arg1):

     return self.soup.blah(arg1)

端到端用例是


import requests

from bs4 import BeautifulSoup

import re

class Foo:

    

    def __init__(self, link):

        res = requests.get(link)

        soup = BeautifulSoup(res.text, 'html')

        self.soup = soup

    def prices(self):

        prices = self.soup.find_all(text=re.compile('td'))

        print(prices[0])


huh = Foo('https://www.basketball-reference.com/players/c/chealjo01.html')


huh.prices()

注意:我改变了一些东西(解析器从 lxml -> html,字符 -> td)以获得一个功能示例,因为我无法访问与 OP 相同的数据。


查看完整回答
反对 回复 2023-11-09
  • 1 回答
  • 0 关注
  • 101 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信