【问题标题】:Scraping data from a website using Python [closed]使用 Python 从网站上抓取数据 [关闭]
【发布时间】:2022-01-23 03:31:49
【问题描述】:

是否可以使用 Python 代码从本网站的图表中提取数据? https://xsi.xeneta.com/

【问题讨论】:

  • 欢迎来到 Stack Overflow。请阅读How to Ask 并确保您了解这不是论坛。您应该从 your own research 开始,然后向我们展示您自己解决问题的尝试,以及对问题的具体描述和关于如何解决的具体问题解决这个问题。这不是弄清楚什么是可能的或设计通用方法的正确位置;这是弄清楚如何应用技术的地方。

标签: python web-scraping


【解决方案1】:

是的,假设页面上存在数据,您可以使用请求获取页面,然后提取所需的数据。它看起来像

import requests
page = requests.get(url="https://xsi.xeneta.com/")
data = page.content
print(data)

这会给你一个起点,至少可以做任何你想做的处理。

对于一些在这里可能有用的功能- https://www.w3schools.com/python/ref_requests_response.asp

【讨论】:

    【解决方案2】:

    如果您检查图表,您会发现它嵌套在 iframe 中。我抓住了第一个图表并直接导航到该站点,而不是 xsi.xeneta.com。您还可以看到 data-json 属性中有很多数据,因此这段代码使用 selenium 打印了这些数据。

    进口:

    pip install selenium
    pip install webdriver-manager
    

    代码:

    from selenium import webdriver
    from webdriver_manager.chrome import ChromeDriverManager
    
    driver = webdriver.Chrome(ChromeDriverManager().install())
    driver.implicitly_wait(5)
    driver.get("https://xsi-short.xeneta.com/xsic/chart/asia-europe/")
    canvas = driver.find_element_by_xpath('//*[@id="chart-visualization-b9948b5ccd27f73bf764abe4a935c502"]')
    print(canvas.get_attribute("data-json"))
    

    【讨论】:

      猜你喜欢
      • 2012-02-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-04
      • 1970-01-01
      相关资源
      最近更新 更多