【发布时间】:2020-03-15 09:15:48
【问题描述】:
我想在我的主函数中使用一个类,但不知道该怎么做。 这是我到目前为止所尝试的。以下代码仅用于演示目的。
代码已根据@furas 的建议进行了编辑。
import requests
from bs4 import BeautifulSoup
from class.embed import Embed
def request(r):
s = requests.Session()
r = s.get(url)
return r
def data(r):
soup = BeautifulSoup(r.txt, 'lxml')
title = soup.select('.ac-ln-title-comingsoon')
return title
def main():
url = 'https://www.apple.com/macbook-pro-16/'
old_title = None
while True:
r = request(url)
title = data(r)
if title != old_title:
url = 'https://www.apple.com/macbook-pro-16/specs/'
embed_class = Embed(url)
print(price, processor)
else:
print('Lorem ipsum')
if __name__ == "__main__":
main()
这是我的课:
class Embed:
def __init__(self, url):
self.r = request(url)
def content(r):
soup = BeautifulSoup(self.r.text, 'lxml')
price = soup.select('.column large-6').get_text()
processor = soup.select('.techspecs-column').get_text()
【问题讨论】:
-
首先你应该在
__init__(self, url)中使用self。然后你应该发送url作为参数embed_class = Embed(url) -
你应该在课堂上使用
self.-self.r = request(url)- 在其他方法中访问这个请求 -BeautifulSoup(self.r.text, ...) -
不要更改有问题的代码,因为这样可能 cmets 不适合您的代码。如果您必须更改代码,请在末尾添加文本
"EDIT:"