我想从newegg手中抢到产品的价格。这是一个示例网站
http://www.newegg.com/Product/Product.aspx?Item=**N82E16820167027**
来自此网站,我想获得包含价格的<div class="grpPricing">
内容。
我不是很擅长制作代码,所以我在网上搜索代码并用它作为一个例子来制作我自己...到目前为止的结果:
function getprice($itemId) {
$source=trim("http://www.newegg.com/Product/Product.aspx?Item=".$itemId);
preg_match("'<div class=\"grpPricing\">(.*?)</div>'si", $source, $match);
if($match)
echo "result=".$match[1];
}
给出了 $itemId
,这就是我可以创建一个循环遍历多个newegg产品并获取所需信息的脚本
注意:它不会让我发布代码,因为它真的应该是,不知道为什么,也许是因为我没有注册?!
和另一个我无法解决的问题......代码的输出应该是:
return strip_tags($price);
因为稍后我会用这一行调用该函数
$price=getprice($row['newegg_productid']);
我已尽力解释清楚,但如果您理解不通,请告诉我。非常感谢任何帮助,谢谢!
答案 0 :(得分:1)
为你的开端:
<?php
function get_string_between($string, $start, $end)
{
$string = " ".$string;
$ini = strpos($string,$start);
if ($ini == 0)
return "";
$ini += strlen($start);
$len = strpos($string,$end,$ini) - $ini;
return substr($string,$ini,$len);
}
$data = file_get_contents("http://www.newegg.com/Product/Product.aspx?Item=N82E16820167027");
$pricediv = get_string_between($data, '<div class="grpPricing">', '<div class="grpAction">');
$pricetext = strip_tags($pricediv);
echo $pricetext;
?>