加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

python – 无法从zillow网站上删除一些元素

发布时间:2020-12-14 22:39:19 所属栏目:资源 来源:网络整理
导读:我正试图抓住zillow网站的内容. Ex- https://www.zillow.com/homedetails/689-Luis-Munoz-Marin-Blvd-APT-508-Jersey-City-NJ-07310/108625724_zpid/ 问题是我无法抓住价格和税收历史的内容. 我认为它们是javascript元素加载页面加载时因此尝试使用selenium

我正试图抓住zillow网站的内容.

Ex- https://www.zillow.com/homedetails/689-Luis-Munoz-Marin-Blvd-APT-508-Jersey-City-NJ-07310/108625724_zpid/

问题是我无法抓住价格和税收历史的内容.
我认为它们是javascript元素加载页面加载时因此尝试使用selenium但我仍然无法得到它们.
以下就是我的尝试.

phistory = soup.find("div",{"id": "hdp-price-history"})
print phistory

HTML

这是最外面的元素,但里面没有任何元素.还尝试了soup.find_all(“table”,class_ =“zsg-table yui3-toggle-content-minimize”),但没有产生任何元素.

最佳答案
您可以尝试等到所需的< table>生成并变得可见:

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait as wait
from selenium.webdriver.support import expected_conditions as EC

driver.get("https://www.zillow.com/homedetails/689-Luis-Munoz-Marin-Blvd-APT-508-Jersey-City-NJ-07310/108625724_zpid/")
table = wait(driver,10).until(EC.visibility_of_element_located((By.XPATH,'//div[@id="hdp-price-history"]//table')))
print(table.text)

输出:

DATE EVENT PRICE $/SQFT SOURCE
05/03/17 Listed for sale $750,000+159% $534 KELLER WILLIAM...
06/15/11 Sold $290,000-38.3% $206 Public Record
10/14/05 Sold $470,000 $334 Public Record

您也可以在不使用BeautifulSoup的情况下解析它,例如

print(table.find_element_by_xpath('.//td[text()="Listed for sale"]/following::span').text)

输出:

$750,000

要么

print(table.find_element_by_xpath('.//td[text()="Sold"]/following::span').text)

输出:

$290,000

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读