【问题标题】:PHP parse URL after loading with users IP加载用户IP后PHP解析URL
【发布时间】:2012-12-30 06:33:17
【问题描述】:

我想知道如何在通过用户 IP 地址加载 URL 后解析它。我想知道这一点,因为对于这个站点,我想解析它会加载一个包含每个人 IP 地址的新密钥。所以当我通过 cURL 的 file_get_contents 解析它时,它给了我默认值而不是唯一键。我认为它工作的唯一方法是将页面加载到 iframe 中,然后获取 iframe 的源。但是,我不知道这是否可能。如果这是或者如果你们知道我可以做到这一点的方法,请告诉我。谢谢!

【问题讨论】:

    标签: php curl html-parsing file-get-contents


    【解决方案1】:

    您说您正在尝试解析 URL,因此请使用 parse_url

    但听起来您的意思是要解析页面结果中的 HTML,在这种情况下您应该使用 DOM 解析器。有关如何使用 PHP 模块正确解析 HTML 的示例,请参阅 http://htmlparsing.com/php.html。如果有人告诉您使用正则表达式来解析 HTML,请忽略它们。

    【讨论】:

    • 那么这种方式会先加载再解析吗?因为使用 file_get_contents 我用 strpos 和其他东西解析了 HTML,它成功生成了 url,但它不是个人 IP 地址唯一的,这种方法是吗?
    • 我不明白您究竟想从 HTML 中提取什么的详细信息。也许您应该修改您的帖子以提供更多详细信息。至于“用 strpos 和其他东西解析 HTML”,这不是解析 HTML 的安全方法。您想使用像 DOM 这样的 HTML 解析器
    【解决方案2】:

    听起来您需要用户从他们自己的计算机上实际获取 url 并将结果发送给您。为什么不将 url 加载到 iframe 中,然后使用 ajax 函数将 iframe 的内容发送回您的站点,对其进行操作并在必要时重定向。

    请参阅有关使用 jquery 处理加载到 iframe 中的内容的对话 iframe contents change event?

    请参阅 jquery ajax 文档,了解如何将此信息提交到您自己的 php 文件 http://api.jquery.com/jQuery.ajax/

    不确定这是否是您想要的,但您可能需要这样做才能将 url 的内容作为用户的 ip 地址。

    【讨论】:

    • 是的,我想获取iframe的源代码,我上面说了。但是,我读到如果 iframe 不在您自己的服务器上,您将无法获得它的源代码。
    • 您对此的权利,看起来您要求用户保存页面并将其上传给您的要求非常有限。或者要求他们安装一些浏览器插件,这些插件可能会在用户看到的内容时转发您的内容。这种东西很可能会被视为侵入性的。
    猜你喜欢
    • 1970-01-01
    • 2010-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-10
    • 2023-04-07
    相关资源
    最近更新 更多