如何用PHP解析HTML?

Pek*_*ica 56 html php regex html-parsing

可能重复:
如何使用PHP解析和处理HTML?

建议参考问题.Stack Overflow每天都会有数十个"如何解析HTML"的问题.但是,由于大多数问题都涉及提问者提出的具体情况,因此很难将其复制.这个问题试图建立一个覆盖问题所有方面的通用"参考问题".

这是一个实验.如果这样的参考问题已经存在,请告诉我,我很乐意删除这个.

我理想的愿景是,三个问题中的每个问题都会得到单独回答,每个问题的最佳答案都会达到顶峰.

两周后,我将在三个类别中的每一个类别中获得200个赏金给予最佳答案, 等待关于Meta 的这个问题的讨论.

这些问题中的每一个都已经在其他地方得到了很好的回答,所以复制+粘贴你自己对不同问题的答案对我来说没问题.

如何用PHP解析HTML?

  1. 有什么图书馆?哪些使用PHP的本机DOM,哪些有自己的解析引擎?(提示:SimpleHTMLDOM)

    1A.我需要找到一个特定的元素,但我发现很难习惯XPath语法.是否有任何基于DOM的库使解析HTML更容易?请考虑制作通用的真实世界示例.

  2. 是否有一个PHP库,使我能够使用CSS [2/3]选择器查询DOM,就像jQuery一样?(提示:phpQuery)请考虑制作通用的真实世界示例.

  3. 奖金问题:为什么我不应该使用正则表达式?请以非专业人士的名义提供一个非常简短的答案.