通过 cURL 和 parse/output 响应获取 "card-title" html 元素
Fetching "card-title" html elements via cURL and parse/output response
我需要监控网站上发布的任何新项目。
我用了很多RSS生成器和查看器,但是同步间隔是sub-par。
我想我可以简单地卷曲页面,当加载时,re-cURL。
问题是,我对 cURL 的经验为 0。
我阅读了文档。
我尝试使用 RSS 生成器,效果很好,但同步间隔很糟糕或需要付费...即使如此。
我需要它尽可能快。仅仅因为几秒钟就失去了上次拍卖。
<?php
$ch= curl_init();
curl_setopt($ch, CURLOPT_URL,"http://whosebug.com/");
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$output= curl_exec($ch);
curl_close($ch);
?>
<div class="content">
<pre>
<?php
echo htmlentities($output);
?>
</pre>
</div>
使用这段代码,我可以获取页面内容。
我应该向仅输出 "card-title" 元素添加什么代码?
P.S。我没有添加真正的 link,但相关页面的项目标题标记为 "card-title"
编辑:
https://www.restockcrc.com/all/(只需要第一页。)
PRTSCN:https://snag.gy/DnNMda.jpg
这是一个示例,说明如何使用正则表达式抓取项目。理想情况下,您希望解析 HTML 而不是使用正则表达式,但不幸的是,它们的 HTML 格式不正确。
$html = file_get_contents('https://www.restockcrc.com/all/');
$re = '/<h4 class="card-title">.+?<a href="(\S+)">(.*?)<\/a>/ms';
preg_match_all($re, $html, $matches, PREG_SET_ORDER, 0);
foreach ($matches as $item) {
echo sprintf('<a href="%s">%s</a><br>', $item[1], $item[2]); // Print results
}
我需要监控网站上发布的任何新项目。
我用了很多RSS生成器和查看器,但是同步间隔是sub-par。
我想我可以简单地卷曲页面,当加载时,re-cURL。
问题是,我对 cURL 的经验为 0。
我阅读了文档。
我尝试使用 RSS 生成器,效果很好,但同步间隔很糟糕或需要付费...即使如此。
我需要它尽可能快。仅仅因为几秒钟就失去了上次拍卖。
<?php
$ch= curl_init();
curl_setopt($ch, CURLOPT_URL,"http://whosebug.com/");
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$output= curl_exec($ch);
curl_close($ch);
?>
<div class="content">
<pre>
<?php
echo htmlentities($output);
?>
</pre>
</div>
使用这段代码,我可以获取页面内容。
我应该向仅输出 "card-title" 元素添加什么代码?
P.S。我没有添加真正的 link,但相关页面的项目标题标记为 "card-title"
编辑: https://www.restockcrc.com/all/(只需要第一页。)
PRTSCN:https://snag.gy/DnNMda.jpg
这是一个示例,说明如何使用正则表达式抓取项目。理想情况下,您希望解析 HTML 而不是使用正则表达式,但不幸的是,它们的 HTML 格式不正确。
$html = file_get_contents('https://www.restockcrc.com/all/');
$re = '/<h4 class="card-title">.+?<a href="(\S+)">(.*?)<\/a>/ms';
preg_match_all($re, $html, $matches, PREG_SET_ORDER, 0);
foreach ($matches as $item) {
echo sprintf('<a href="%s">%s</a><br>', $item[1], $item[2]); // Print results
}