如何在每个寻呼机链接中爬取和提取数据?
How to make crawling and extracting data in each pager links?
我想提取一个网站的所有属性name=""
,
示例html
<div class="link_row">
<a href="" class="listing_container" name="7777">link</a>
</div>
我有以下代码:
<?php
$html = new DOMDocument();
@$html->loadHtmlFile('http://www.onedomain.com/plus?ca=11_c&o=1');
$xpath = new DOMXPath( $html );
$nodelist = $xpath->query( "//div[@class='link_row']/a[@class='listing_container']/@name" );
foreach ($nodelist as $n){
echo $n->nodeValue."\n<br>";
}
?>
结果是:
7777
此代码工作正常,但不必限制为一个寻呼机号码。
http://www.onedomain.com/plus?ca=11_c&o=1
寻呼机属性是 "o=1"
我想在您完成 o=1
后,继续 o=2
我定义的变量 $last=556
等于 http://www.onedomain.com/plus?ca=11_c&o=556
你能帮帮我吗?
最好的方法是什么?
谢谢
使用 for(或 while)循环。我在您提供的代码中没有看到 $last
,所以我静态设置了最大值加一。
$html = new DOMDocument();
for($i =1; $i < 557; $i++) {
@$html->loadHtmlFile('http://www.onedomain.com/plus?ca=11_c&o=' . $i);
$xpath = new DOMXPath( $html );
$nodelist = $xpath->query( "//div[@class='link_row']/a[@class='listing_container']/@name" );
foreach ($nodelist as $n){
echo $n->nodeValue."\n<br>";
}
}
更简单的例子:
for($i =1; $i < 557; $i++) {
echo $i;
}
我想提取一个网站的所有属性name=""
,
示例html
<div class="link_row">
<a href="" class="listing_container" name="7777">link</a>
</div>
我有以下代码:
<?php
$html = new DOMDocument();
@$html->loadHtmlFile('http://www.onedomain.com/plus?ca=11_c&o=1');
$xpath = new DOMXPath( $html );
$nodelist = $xpath->query( "//div[@class='link_row']/a[@class='listing_container']/@name" );
foreach ($nodelist as $n){
echo $n->nodeValue."\n<br>";
}
?>
结果是:
7777
此代码工作正常,但不必限制为一个寻呼机号码。
http://www.onedomain.com/plus?ca=11_c&o=1
寻呼机属性是 "o=1"
我想在您完成 o=1
后,继续 o=2
我定义的变量 $last=556
等于 http://www.onedomain.com/plus?ca=11_c&o=556
你能帮帮我吗? 最好的方法是什么?
谢谢
使用 for(或 while)循环。我在您提供的代码中没有看到 $last
,所以我静态设置了最大值加一。
$html = new DOMDocument();
for($i =1; $i < 557; $i++) {
@$html->loadHtmlFile('http://www.onedomain.com/plus?ca=11_c&o=' . $i);
$xpath = new DOMXPath( $html );
$nodelist = $xpath->query( "//div[@class='link_row']/a[@class='listing_container']/@name" );
foreach ($nodelist as $n){
echo $n->nodeValue."\n<br>";
}
}
更简单的例子:
for($i =1; $i < 557; $i++) {
echo $i;
}