无法两次抓取同一页面



我正在尝试抓取网站 https://www.realtor.com/realestateandhomes-search/28083

这是我到目前为止编写的代码

class Client(QWebPage):
def __init__(self, url):
self.app = QApplication(sys.argv)
QWebPage.__init__(self)
self.loadFinished.connect(self.on_page_load)
self.mainFrame().load(QUrl(url))
self.app.exec_()
def on_page_load(self):
self.app.quit()

Price = []
url = 'https://www.realtor.com/realestateandhomes-search/28083'
client_response = Client(url)
source = client_response.mainFrame().toHtml()
soup = bs.BeautifulSoup(source, 'lxml')
for link in soup.findAll('span', class_='data-price-display'):
Price.append(link.text) 

运行它,第一次一切正常。 第一次正确运行后。我再次运行它,不抓取任何数据,只返回价格值的"[]">

成功运行它后,我将以前工作的确切代码复制并粘贴到空白文档中,然后再次运行它。 它什么也没返回。

为什么会这样?

Price.append(link.text)

需要缩进,因为它在 for 循环下,但它看起来不像,至少在 SO 上是这样。代码中是否相同?这也是你的整个代码吗?我没有看到类客户端在哪里实例化 -

最新更新