我正在尝试使用php 简单的 html dom 解析器,显然它不会解析来自 localhost 的某些站点。如果我在线上传脚本,那么一切都很完美,但 localhost 失败并且仅在某些特定站点上失败。我相信这是因为目标站点实施了某种检查,但我想不出它可能是什么......有人知道为什么会这样吗?
问问题
730 次
1 回答
2
正如您所提到的,一些网站具有不允许未经授权的第三方工具解析其内容的机制。
例如脸书。
如果问题仅在您位于 localhost 时发生,您可以尝试编辑主机文件并添加以下行:
127.0.0.1 mytestingserver.com
然后以与使用 localhost 访问文件相同的方式访问文件,但不要使用 localhost:
mytestingserver.com
例如:
mytestingserver.com/simple-html-dom.php
并查看内容是否加载。
如果它有效,您尝试解析的页面可能只检查请求是否来自域名;如果没有,那么他们可能有一个更复杂的保护机制,而您想要做的是是否不允许,或者有更好的方法来做到这一点(例如 API)。
于 2013-04-24T23:45:53.137 回答