javascript - 从页面内容中获取 HREF 值
问题描述
我正在从格式如下的页面获取数据
<span id="RANDOMINFO">
<a href="/DEMO/RANDOMDATA">+</a>
<span title="1">DATA I WANT HERE</span>
<a href="https://URL.COM/">CLICK</a>
<a href="https://URL.COM/">MORE RANDOM DATA</a>
</span>
<span id="RANDOMINFO">
<a href="/DEMO/RANDOMDATA">+</a>
<span title="2">DATA I WANT HERE</span>
<a href="https://URL.COM/RANDOM">CLICK</a>
<a href="https://URL.COM/RANDOM">MORE RANDOM DATA</a>
</span>
如何从页面获取 href 值
这是我必须从中获取数据span ID
但不知道该怎么做href
的代码no name or id
$doc = new DOMDocument();
@$doc->loadHTML($html2);
foreach($doc->getElementsByTagName('span') as $element )
{
if (!empty($element->attributes->getNamedItem('id')->value))
{
$filename = 'newpks/'.$f.'.txt';
$file = fopen($filename,"a");
$data = $element->attributes->getNamedItem('id')->value.PHP_EOL;
fwrite($file,$data);
fclose($file);
$i++;
$end = $start;
}
}
解决方案
我假设您只对带有href
属性的链接感兴趣,然后我们知道标签的类型为a
. 这应该足够了(虽然我无法测试代码)。
我稍微优化了代码,因为DOMNode
从你那里继承的类DOMElement
可以使用hasAttribute
andgetAttribute
代替。
foreach($doc->getElementsByTagName('a') as $element ) {
if ($element->hasAttribute('href')) {
$href = $element->getAttribute('href');
// Do your work here
}
}
推荐阅读
- android - 如何在 Android Studio 中设置放置在图像上的适当文本颜色?
- php - 在 WooCommerce 中将购物车小计减去购物车总错误问题
- python - 将带有逗号的输入从 UI 输入到后端的 python 代码
- r - 使用 Big Sur v11.1 将 R 从版本 3 升级到 4.0.3 后的编译包安装问题
- python - Python 插件不会出现在 IDA 7.5 中
- php - 如何使用类别名称从特定类别中获取所有帖子?
- python - TypeError:“torch.dtype”对象不可调用。如何调用这个函数?
- vue.js - VueJS - 如何在没有任何硬代码的情况下使组件完全动态化
- .htaccess - 使用 .htaccess 将 URL 子文件夹转换为参数
- javascript - 表单提交后Antd 4 Checkbox没有价值