如何在不使用jquery的情况下查找网站中的所有链接
我是jquery新手,请给我推荐一个简单易学的代码,用于查找外部网站中的所有链接,而无需实际使用jquery。我正在尝试的代码操作系统此URL=$$'a';用于url控制台中的url.logURL[url].href;但是,只有当我们在想要获取链接的页面上时,它才起作用。我也可以更喜欢php,但不要太复杂,或者更简单地说,我想说的是如何使用JQuery或超文本预处理器[php]创建网络蜘蛛,就像谷歌制作的那样 你不能不去拜访。至少您必须在服务器端使用CURL解析页面内容,并将其回显到客户端浏览器。 您可以使用phpQuery从html内容获取所有链接如何在不使用jquery的情况下查找网站中的所有链接,jquery,hyperlink,web,Jquery,Hyperlink,Web,我是jquery新手,请给我推荐一个简单易学的代码,用于查找外部网站中的所有链接,而无需实际使用jquery。我正在尝试的代码操作系统此URL=$$'a';用于url控制台中的url.logURL[url].href;但是,只有当我们在想要获取链接的页面上时,它才起作用。我也可以更喜欢php,但不要太复杂,或者更简单地说,我想说的是如何使用JQuery或超文本预处理器[php]创建网络蜘蛛,就像谷歌制作的那样 你不能不去拜访。至少您必须在服务器端使用CURL解析页面内容,并将其回显到客户端浏览器
1. https://code.google.com/p/phpquery/downloads/list - phpQuery-onefile and extract it to public directory. for example create a folder "parsers" in public and put it there.
2. create get-urls.php file and put it to parsers directory in public directory (near with phpquery)
<?php
require_once('phpQuery-onefile.php');
$document = phpQuery::newDocumentFileHTML($_GET['url'], $charset = 'utf-8');
$links = $document->find('a');
$result = array();
foreach ($links as $link) {
$href = pq($link)->attr('href');
$result[] = $href;
}
echo json_encode($result);
3. at clientside (on page where you want to get links) call your serverside script and pass your url and get answer
<script>
$(function(){
$.get('http://yourserver.com/parsers/get-urls.php', {'url': 'some_url_here'}, function(response){
response = $.parseJSON(response);
for(var r in response) {
var link = response[r];
console.log(link);
}
});
});
</script>
你说的“不去那里”是什么意思?我想他想创建一个跨域请求。由于http头的原因,很多时候不可能找到链接的数量。第二,展示一些你正在谈论的代码、作品或参考资料,这意味着有一个代码URL=$$‘a’;用于url控制台中的url.logURL[url].href;它在开发人员控制台中打印所有链接,但问题是我们必须在该页面上,因为执行此代码时没有错误,这意味着如果我们不在需要所有链接并执行该代码的页面上,那么它将在开发人员控制台上出错。请澄清并提供一些代码以帮助我们理解。使用jQuery可能很困难。但是,您可以在服务器端执行此操作。下面是一个开源示例,可能会有所帮助:当我在开发人员控制台上执行代码时,它会出错。或者如果我必须在本地服务器上的php文件中执行代码,那么如何将javascript放入php。感谢您的帮助,但我认为我没有正确应用您的代码,因为我还不能理解它。回答不错,可能是最好的一个我会的。这是您的文档