javascript - 获取 API 未获取完整的 HTML 页面
问题描述
我正在使用 Fetch API 从网页中获取一些(公共)数据。这是我的代码:
const proxyurl = "https://cors-anywhere.herokuapp.com/";
var bookUrl = "the+old+man+and+the+sea";
var url = 'https://miss.ent.sirsidynix.net/client/en_US/mlsathome/search/results?qu=' +
bookUrl + '&te=ILS';
fetch(proxyurl + url).then(function(result){
return result.text();
}).then(function(text){
var parser = new DOMParser();
var html = parser.parseFromString(text, 'text/html');
var divs = html.getElementsByTagName('div');
var x = html.getElementsByTagName('thead');
console.log(divs);
console.log(x);
});
div 的控制台中的输出是“HTMLCollection(80)”,所以我知道页面已经加载,但 x 的输出是“HTMLCollection(0)”,这意味着它没有找到任何thead
元素。但是,当我查看页面的源代码时,我可以看到多个thead
标签。每当我加载页面时,表格确实需要更长的时间来加载。如何获取 Fetch API 以获取整个页面?
解决方案
推荐阅读
- ios - 如何将不同的 url 传递给准备 segue 的下一个 VC?
- c - 关于在 ac 程序中使用动态分配的二维数组的问题
- rust - 如何将空格分隔的字符串序列化/反序列化为数据结构?
- javascript - Axios 发布请求停止
- android - Robot Framework - Appium Swipe / Scroll down 不执行 Swipe / Scrolling 动作
- java - 类似于 Java Random Class 的 nextInt(int bound) 的 long 数据类型的方法
- c++ - 将私有数据成员作为默认参数传递给该类的公共方法时出错
- serial-port - rs232 / 我只收到我之前发送的命令
- ios - Swift 5 - 让 tableview 等到来自 api 调用的数据返回(使用多个 tableviews)
- java - 如何使用 For 循环和 While 循环重复代码块