我还没有真正发现任何相关内容。我想从网站上读取数据。从我的网页上我可以用
读取div的值<div class="tools">hammer</div>
var divs = document.getElementsByTagName("div");
for(var i=0; i<divs.length; i++ ) {
if(divs[i].className == "tools") {
alert(divs[i].innerHTML);
}
}
是否可以设置所需网页的网址,以便此代码可以抓取该网页?我知道类名和网址。
基于@rangelarceny的回答,我创建了这个代码块,但在运行脚本时没有看到警告:
$.ajax({
type: 'get',
url: 'https://play.google.com/store/apps/details?id=com.viber.voip',
crossDomain: true, //Very important, ensures you can get data from a domain that isn't your own!
success: function() {
var divs = document.getElementsByTagName("div");
for(var i=0; i<divs.length; i++ ) {
if(divs[i].className == "votes") {
alert(divs[i].innerHTML);
}
}
}
});
答案 0 :(得分:4)
如果您使用的是像jQuery这样的库,那么您只需使用获取网页代码的load()
函数(如果您将#myDiv
附加到网址,则可以使用部分网页)。如果将其放入变量中,则可以处理该信息。如果您只是使用Javascript,那么您需要考虑制作一个AJAX请求(这是load()
所做的)。您可以找到有关如何执行此操作的更多信息located here。
有关load()
功能的更多信息,请read jQuery's documentation。
请记住,jQuery的load()
函数用于将HTML加载到元素中。如果您想阅读和操作该数据,那么您应该使用ajax()
function。通过这种方式,您可以执行以下操作:
$.ajax({
type: 'get',
url: 'http://www.google.com',
crossDomain: true, //Very important, ensures you can get data from a domain that isn't your own!
success: function(data) {
$('#myDiv').html(data);
//Now I can handle all the HTML from my URL from a <div> tag called #myDiv, the following will alert out the body of http://www.google.com
alert($('#myDiv').find('body'));
}
});
这实际上会对指定的URL发出 GET 请求,同时注意到它与请求的来源(您的服务器)不是同一个域名,然后在函数中处理成功在变量data
中返回的HTML。您现在可以使用数据,因为它现在是您的变量,包括如何解析您的信息。
答案 1 :(得分:0)
$file=fopen($URL,'r');
if ($file)
{
$string ="";
while (!feof($file)){
$string .=fgets($file,512);
}
echo $string;
}else echo "error";
这与网络相呼应。但你可以随心所欲地做到这一点。
确定。这里是一个如何在js
中索取webSitevar xmlhttp;
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)
{
return xmlhttp.responseText;
}
}
var answerFromURL=xmlhttp.onreadystatechange();
xmlhttp.open("GET","urlToParse.php",true);
xmlhttp.send();