gpt4 book ai didi

javascript - 如何从另一个网站获取特定的div内容

转载 作者:行者123 更新时间:2023-12-03 01:56:45 25 4
gpt4 key购买 nike

我想将网站表格内容从他们的网站获取到我的网站。我通过以下函数获取 innerHTML:

function httpGet(theUrl)
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
createDiv(xmlhttp.responseText);
}
}
xmlhttp.open("GET", theUrl, false );
xmlhttp.send();
}


document.write(httpGet("https://cors.io/?http://crystalmathlabs.com/tracker-rs3/currenttop.php"));

function createDiv(responsetext)
{
var _body = document.getElementsByTagName('body')[0];
var _div = document.createElement('div');
_div.innerHTML = responsetext;
_body.appendChild(_div);
}

所以这基本上复制了网站页面,没有所有样式和图像之类的东西,这很好,但我想将其减少到仅使用特定类名的表格。我正在考虑几种方法来做到这一点......

  1. 对 URL 进行一些操作以阻止除我想要的表之外的所有元素,我什至不确定这是否可行。

  2. 过滤掉响应文本中的所有内容。它返回一个字符串,所以我想我需要一些主要的字符串操作来做到这一点。

  3. 创建一个临时 div,这样我就可以通过 jQuery 和 JS 操作所有内容,这有点老套,但我认为它会起作用。

最好的方法是什么?或者也许是我还没有提到的想法。

最佳答案

不确定您的用例是否可以容纳服务器端代码,但可以解决此场景的一个非常好的 Node 包是 x-ray。

通过在服务器端执行此操作,您可以避免 CORS 问题,并且通过使用 Node 作为服务器,您仍然可以用 JS 编写所有内容。

x-ray 还为您提供了一个非常好的选项,如 jquery 来指向您想要从响应 HTML 中捕获的确切 html 节点。

查看此处了解详细信息:x-ray

关于javascript - 如何从另一个网站获取特定的div内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50203991/

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