gpt4 book ai didi

javascript - 从ajax驱动的网站检索渲染的html

转载 作者:行者123 更新时间:2023-11-28 09:49:02 26 4
gpt4 key购买 nike

我当前正在尝试用 python 编写一个脚本,该脚本允许我向网页发送 get 请求(使用 python requests 模块),然后使用模块 beautiful soup 解析响应。

我遇到的问题是,我尝试获取的表是在初始 DOM 加载后通过 JavaScript 加载/创建的,因此对我的 get 请求的响应不包含它。

最佳答案

您可以做两件事,这取决于您的问题。

<强>1。直接获取表格
如果您确实想要获取该表,请检查发出了什么请求来获取该表。例如,您可以使用 Firebug 或 Chrome 开发者工具来获取请求的正确结构。

<强>2。 Javascript很重要
如果支持许多网站更重要,并且 javascript 发挥一些魔力也很重要,那么您可以使用类似 Selenium 的内容。使用执行 Javascript 的 Brwoser,您可以在加载表格后获取源代码。

<小时/>

更新 - 根据您评论中的网址
您可以在 Chrome 开发者工具的 Network 选项卡上看到,该请求的加载时间非常长:

http://www.ticketmaster.com/json/browse/music?select=n93

因此我们假设这会加载您的数据。在浏览器中打开 URL,您会看到表的数据位于 JSON Format 中。 。如果您只想解析/获取此表,而对很多页面没有通用的内容,那么我只需用这种方法获取数据即可。

更新
尝试使用过滤器或日期范围更改表格。您可以检查 API 的工作原理并按照您想要的方式发出请求。

future 7 天中过滤舞蹈/电子:
/json/browse/music?g=Dance%2FEectronic&select=n7

还有另一个 API 调用:
http://www.ticketmaster.com/json/browse/music/histogram?select=n7

但我无法告诉你它的用途。但我认为你现在有了一个好的方向,并且比我有更多的时间来理解它是如何运作的;)

<小时/> 工具
我用来查找 URL 的工具是内置的 Chrome Developer Tool使用 网络选项卡。激活该工具,刷新页面并修改请求以了解发生的情况。

用python解析JSON也很容易:http://docs.python.org/library/json.html

关于javascript - 从ajax驱动的网站检索渲染的html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11331255/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com