如何找到动态加载内容的来源

我想抓取this table中的条目。它显然是在页面加载后由javascript填充的,因此,我不是直接抓取(使用诸如webdriver之类的东西),而是想直接从javascript正在与之通信的任何服务中请求数据。

使用chrome dev工具的“网络”标签,我认为我已将其范围缩小到xhr POSThttps://www.oregon.gov/oha/ERD/_vti_bin/client.svc/ProcessQuery,但显示的响应看起来并不相关,并且没有其他网络活动项目似乎也是。

我该如何准确地跟踪正在填充表的请求?

tulianzhi 回答:如何找到动态加载内容的来源

HTML5引入了web-storage,它像Cookie一样在本地缓存数据。这样可以防止在首次加载网站后出现数据请求。在chrome开发工具中,转到application标签,然后在storage下,查找具有所需数据的密钥。如果存在,则可以清除存储,刷新,然后在获取数据的xhr选项卡中将看到fetchnetwork [1]请求。您可以右键单击该请求,然后将其复制为curl命令以直接请求数据而不会进行抓取。您可能会担心该服务会阻止其批准的Web前端之外的访问,但是cors不能阻止您,因为它仅适用于浏览器。

[1] fetch是自2015年以来改进的xhr

感谢@sideshowbarker指出我指向sessionStorage并回答了我的cors问题。

本文链接:https://www.f2er.com/1378009.html

大家都在问