我试图抓住这个网址
https://coop.no/sortiment/obs-bygg/hageuterom/hagemaskiner/hoyttrykksspylere/karcher-1.673-220.0?variantCode=10695
使用此代码
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://coop.no/sortiment/obs-bygg/hageuterom/hagemaskiner/hoyttrykksspylere/karcher-1.673-220.0?variantCode=10695');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_HEADER, 0);
$output = curl_exec($ch);
if($output === FALSE){
echo "cURL Error: " . curl_error($ch);
}
curl_close($ch);
print_r($output);
?>
我的问题是,return(image of display)中我唯一得到的是来自网站的<ul class="breadcrumbs">
以及其他一些空元素。完全没有错误。
答案 0 :(得分:0)
您的代码似乎没问题,它会获取网址的内容,但更好的方式是显示它:
echo "<pre>".htmlspecialchars(print_r($output, 1))."</pre>";
您在页面上看到的所有数据最初都存储在JS中:
window.PRODUCT_PAGE_PROPS = ...
然后由React呈现为HTML。因此,要首先提取数据,您应该找到带有正则表达式的script
块,然后解析它的内容。