是否有可能从这些不以HTML源代码输出数据的网站中提取数据?

Is it possible to extract data from these websites that don't output data in the HTML source code?

本文关键字:数据 输出 网站 提取 源代码 HTML 有可能 是否      更新时间:2023-09-26

许多年前,我曾经使用Perl和Python通过查看HTML源代码中的数据来爬行一些网站。

现在我想做另一个个人项目,涉及提取数值数据:

  1. 本PredictIt网站的表元素

  2. PredictWise网站上的单个图形元素(x和y分别表示)

  3. 五三八网站上的单个图形元素(x和y各一个)

这些网页的HTML源代码都不包含数值数据。有办法提取这些数据吗?如果有,在哪里?

我觉得一定有一种方法,因为这些都是浏览器渲染图表和图形所需的前端信息。

(我在这些网页上找不到提供给开发人员的原始数据。所以我想我必须自己提取数据。)

第一个链接上的表格元素确实可以从呈现的HTML中读取。如果使用Chrome浏览器,右键单击文本并选择"检查"。Chrome调试器将显示包含数据的确切HTML元素。

其他链接更难。我没有看到在原始HTML中查看数据的方法,但在第二个链接上,我能够看到JSON数据提供来自服务器的图形数据。您可能能够为您的项目解析它。数据如下所示:

{"id":"1687","name":"Hawaii Caucus - DEM","notes":"","suppress_timestamp":"0","header":["Outcome","PredictWise","Derived Betfair Price","Betfair Back","Betfair Lay","Pollster","Derived PredictIt"],"default_sort":"2","default_sort_dir":"desc","shade_cols":["1"],"history":[{"timestamp":"03-17-2016 1:03PM","table":[["Hillary Clinton","43 %",null,null,null,null,"$ 0.425"],["Bernie Sanders","57 %",null,null,null,null,"$ 0.570"]]},...

打开该网站上的Chrome调试器并转到网络选项卡。从那里,寻找对"table_xxxx"的请求。json"。您可以看到请求数据的URL,以及从服务器返回的原始数据。

希望这对你有帮助!