我如何从图表硒Python中提取数据

时间:2019-06-21 16:01:01

标签: python selenium web-scraping

我想知道如何使用Selenium python从图表中提取数据。我想从this web中提取数据。我正在使用python。我想提取图表中的所有点。谢谢。

我尝试过

driver.find_element_by_xpath("/html/body/main/div[1]/div/div[2]/div[2]/div[3]/div[1]/div[8]/div/div[2]/div/div/div/svg/g[12]").text

1 个答案:

答案 0 :(得分:2)

不需要硒,因为该图有一个api端点。我为此使用了请求模块。这将在图表上打印所有点,也将不在图表上打印点(例如,自2016/17起的日期)。如果您查看此api端点,也可以用于获取更多信息。

import requests

r = requests.get('https://www.propertyfinder.ae/en/api/property/6951117/market-trends')

trends = r.json()
print(trends['data']['attributes']['graph']['chart_data'])

这将返回:

[{'date': 'Feb, 2016', 'label': 'Dubai Marina', 'value': 160000}, {'date': 'Mar, 2016', 'label': 'Dubai Marina', 'value': 155000}, {'date': 'Apr, 2016', 'label': 'Dubai Marina', 'value': 150000}, {'date': 'May, 2016', 'label': 'Dubai Marina', 'value': 150000}, {'date': 'Jun, 2016', 'label': 'Dubai Marina', 'value': 150000}, {'date': 'Jul, 2016', 'label': 'Dubai Marina', 'value': 145000}, {'date': 'Aug, 2016', 'label': 'Dubai Marina', 'value': 149999}, {'date': 'Sep, 2016', 'label': 'Dubai Marina', 'value': 150000}, {'date': 'Oct, 2016', 'label': 'Dubai Marina', 'value': 150000}, {'date': 'Nov, 2016', 'label': 'Dubai Marina', 'value': 145000}, {'date': 'Dec, 2016', 'label': 'Dubai Marina', 'value': 145000}, {'date': 'Jan, 2017', 'label': 'Dubai Marina', 'value': 150000}, {'date': 'Feb, 2017', 'label': 'Dubai Marina', 'value': 150000}, {'date': 'Mar, 2017', 'label': 'Dubai Marina', 'value': 145000}, {'date': 'Apr, 2017', 'label': 'Dubai Marina', 'value': 145000}, {'date': 'May, 2017', 'label': 'Dubai Marina', 'value': 140000}, {'date': 'Jun, 2017', 'label': 'Dubai Marina', 'value': 140000}, {'date': 'Jul, 2017', 'label': 'Dubai Marina', 'value': 140000}, {'date': 'Aug, 2017', 'label': 'Dubai Marina', 'value': 139000}, {'date': 'Sep, 2017', 'label': 'Dubai Marina', 'value': 135000}, {'date': 'Oct, 2017', 'label': 'Dubai Marina', 'value': 135000}, {'date': 'Nov, 2017', 'label': 'Dubai Marina', 'value': 135000}, {'date': 'Dec, 2017', 'label': 'Dubai Marina', 'value': 135000}, {'date': 'Jan, 2018', 'label': 'Dubai Marina', 'value': 135000}, {'date': 'Feb, 2018', 'label': 'Dubai Marina', 'value': 135000}, {'date': 'Mar, 2018', 'label': 'Dubai Marina', 'value': 135000}, {'date': 'Apr, 2018', 'label': 'Dubai Marina', 'value': 135000}, {'date': 'May, 2018', 'label': 'Dubai Marina', 'value': 135000}, {'date': 'Jun, 2018', 'label': 'Dubai Marina', 'value': 135000}, {'date': 'Jul, 2018', 'label': 'Dubai Marina', 'value': 130000}, {'date': 'Aug, 2018', 'label': 'Dubai Marina', 'value': 125000}, {'date': 'Sep, 2018', 'label': 'Dubai Marina', 'value': 125000}, {'date': 'Oct, 2018', 'label': 'Dubai Marina', 'value': 120000}, {'date': 'Nov, 2018', 'label': 'Dubai Marina', 'value': 120000}, {'date': 'Dec, 2018', 'label': 'Dubai Marina', 'value': 120000}, {'date': 'Jan, 2019', 'label': 'Dubai Marina', 'value': 120000}, {'date': 'Feb, 2019', 'label': 'Dubai Marina', 'value': 120000}, {'date': 'Mar, 2019', 'label': 'Dubai Marina', 'value': 110000}]