请注意,我的问题专门针对“简单的 HTML DOM 库”!有 3k+ 行代码,我对使用不同的解析器没有兴趣。
可以在此处找到参考:http ://simplehtmldom.sourceforge.net/manual.htm 上的“如何查找 HTML 元素”
使用以下代码,我试图从各种div
元素中提取主页 URL。
定义后代选择器div[...] li a
很容易。但要将其缩小到我尝试的主页:
- 第 6 个
li
元素...通过索引(见下文,导致错误“试图获取非对象的属性”) - 奇怪
label=Internet:
的代码
不幸的是,我没有成功:)
期望的输出
http://www.someurl.com/
http://www.anotherurl.com/
不起作用的代码
foreach($html->find('div[class=contact-data] li a', 6) as $element_details) {
// variable $html contains the Input listed below
// Output $element_details
}
输入(存储在变量 $html 中)
<div class="contact-data">
<ul class="plain-list">
<li>
Somestreet 18</li>
<li>
88888
Somecity</li>
<li>
<label>
Tel:</label>123/123456</li>
<li>
<label>
Fax:</label>123/123457</li>
<li>
<label>
E-Mail:</label><a href="http://www.somesite.com/de/Service/ContactParam?mail_pnr=000290080" onclick="">Contact</a></li>
<li>
<label>
Internet:</label><a href="http://www.someurl.com/">Homepage</a></li>
<li>
<div style="margin-left: 0px">
</div></li>
</ul>
</div>
<div class="contact-data">
<ul class="plain-list">
<li>
Anotherstreet 68</li>
<li>
88888
Anothercity</li>
<li>
<label>
Tel:</label>123/123447</li>
<li>
<label>
Fax:</label>123/123458</li>
<li>
<label>
E-Mail:</label><a href="http://www.anothersite.com/de/Service/ContactParam?mail_pnr=000570030" onclick="">Contact</a></li>
<li>
<label>
Internet:</label><a href="http://www.anotherurl.com/">Homepage</a></li>
<li>
<div style="margin-left: 0px">
</div></li>
</ul>
</div>