Web scraping 如何查找动态加载内容的源

Web scraping 如何查找动态加载内容的源,web-scraping,xmlhttprequest,google-chrome-devtools,fetch-api,web-storage,Web Scraping,Xmlhttprequest,Google Chrome Devtools,Fetch Api,Web Storage,我想把这些条目删掉。页面加载后,它显然是由javascript填充的,因此我不想(使用webdriver之类的工具)直接从javascript所使用的任何服务请求数据 使用chrome开发工具的网络标签,我想我已经把它缩小到了xhr-POST到https://www.oregon.gov/oha/ERD/_vti_bin/client.svc/ProcessQuery,但显示的响应看起来不相关,其他网络活动项似乎也不相关 如何准确地跟踪填充表的请求?引入了HTML5,它与Cookie一样,在本地

我想把这些条目删掉。页面加载后,它显然是由javascript填充的,因此我不想(使用webdriver之类的工具)直接从javascript所使用的任何服务请求数据

使用chrome开发工具的网络标签,我想我已经把它缩小到了
xhr-POST
https://www.oregon.gov/oha/ERD/_vti_bin/client.svc/ProcessQuery
,但显示的响应看起来不相关,其他网络活动项似乎也不相关

如何准确地跟踪填充表的请求?

引入了HTML5,它与Cookie一样,在本地缓存数据。这可以防止首次加载站点后的数据请求。在chrome开发工具中,转到
应用程序
选项卡,在
存储
下,查找包含所需数据的密钥。如果它在那里,您可以清除存储并刷新,然后在获取数据的
网络
选项卡中看到
xhr
fetch
[1]请求。您可以右键单击请求并将其复制为
curl
命令,以直接请求数据,而无需进行刮取。您可能担心该服务会阻止来自其批准的web前端之外的访问,但是
cors
无法阻止您,因为它只适用于浏览器

[1] 自2015年起是否有改进的
xhr


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

填充该表的实际数据似乎来自
窗口。sessionStorage
。因此,您可能需要考虑在浏览器DEVTooS中通过代码来查看“代码>窗口”。SeStestSturvie开始填充数据。@ SsiDeWoBARKER -谢谢!你怎么知道的?我试图搜索“存储”,但找不到任何东西。。。我没有做这类事情的经验,如何开始逐步处理代码?通过在devtools中快速初始设置断点,我认为数据可能会从运行
sessionStorage.setItem(e,e)的代码进入
窗口。sessionStorage
呼叫
https://apps.oregon.gov/Application/CDN/Assets/bundle.min.js?b=twitter-bootstrap、Modernizer、jasny bootstrap、js.cookie、过时浏览器、全州链接、Help-page-poll\u an\u bs、sp\u 2016
。稍后,我会抽出时间进一步查看,但与此同时,如果您从那里进一步了解代码,设置更多断点,您可能能够进一步隔离数据源。至于调试方法,我也会抽出时间稍后编写一些详细信息。但一般来说,如果您不熟悉从devtools中可以获得哪些信息,有时您可以通过在不同的选项卡中搜索,并将内容展开,直到找到有趣的内容。@sideshowbarker-谢谢您的帮助!我从未注意到在DOM中“在子树修改上中断”的可能性。在这么多缩小的js中导航有困难,所以我期待着你的评论,但在此期间我会继续寻找。。。现在我明白了为什么javascript标记是相关的:)