如何抓取SimpleHTMLDom返回的网站?
问题描述:
我简单的HTML DOM工作,但现在我想它开始抓取URL的返回,无爬行的URL,它已经抓取。我怎么用PHP/MySQL/HTML来做到这一点?如何抓取SimpleHTMLDom返回的网站?
<?php
include "/simple_html_dom.php";
$target_url = "http://www.daparadise.com/";
$html = new simple_html_dom();
$html->load_file($target_url);
foreach($html->find('a') as $link){
echo $href->href."<br />";
}
$html -> clear();
?>
我已经看过它,但我似乎无法找到任何关于搜索结果返回。
答
你列出一个特定页面的图片吗?你的代码做到了。它不爬行。对于爬行您通常会看出来的<a>
标签,获得src
属性,把它推到堆栈或队列,进一步抓取。
总体思路:
- 队列=阵列($ curPage); //或者使用Stack for Depth首先搜索;你可以在圆圈(循环)当队列不为空运行
- :#或任何更好的条件..
- 蹦出第一个元素。获取页面的URL。
- 检查,如果在数据库中已存在此页面;如果这样:
- (继续而下一次迭代)//避免循环。
- 用你的DOM解析器解析出该页面。
- 获取你想要的任何细节,并将它们存储到您的数据库中
- 寻找所有
<a>
标签。对于每个<a>
标签做:- 获取
src
属性 - 推
src
属性到队列中。
- 获取
- (继续)
+0
我并没有真正弄清楚我正在尝试的主要事情。但是我确实输入了它进入数据库的所有信息。我有它检查,看看网址是否已经在数据库中,如果没有,它会进入它。每天上午12点和下午12点,它会重新抓取并在数据库中添加更多内容。 – Zacharysr 2012-07-07 22:35:46
路太广,因此是特定的编程问题。 – 2012-07-07 17:28:48
我想弄清楚如何抓取它返回的网址。我已经看过它,但我无法发现任何东西。我试图弄清楚我该怎么做...... – Zacharysr 2012-07-07 17:30:45