我正在尝试抓取该网站 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 循环下,但看起来不是这样,至少在这里是这样。你的代码中是一样的吗?这也是你的全部代码吗?我没有看到 Client 类在哪里实例化 --