如何从外部网站获取值,而该值是由该网站中的 javascript 设置的

2024-01-04

我曾经使用 JQuery 加载外部网站内容(html/json)。我还获得了一个代理 PHP 页面,可以与一些具有严格来源政策的网站一起使用。

我的问题是针对某些网站: 在他们的 HTML 源代码中:<span id='target'>0.00</span>

在 Chrome 中浏览此外部页面时:SPAN 值设置为X

我尝试直接 JQuery $.get/$.ajax 和 PHP 代理,返回的所有值是0.

有什么办法可以得到最终的值X?我知道这是不可能的,因为很难模拟浏览器操作来运行远程 JavaScript。

我可以在我的服务器中测试任何内容,因此如果您知道任何可行的方法,请在此处分享。谢谢!


我可以想到两个选择。一个是好的、明智的、快速的,等等。另一个是愚蠢的,是一个非常糟糕的主意,但玩起来很有趣。您的两个选择是:

  • Use Phantom.js http://phantomjs.org
  • 通过 PHP 脚本获取外部站点的源代码,将其加载到页面中并使用 jQuery 查找值。

第一个选项是正确且明智的。Phantom.js 启动无头 Webkit 浏览器,加载、运行,然后解析页面并将其提供给您。还有一个 PHP 包装器 https://github.com/jonnnnyw/php-phantomjs,因此您可以通过 PHP 快速完成

或者,你可以这样做:

通过 PHP 使用 jQuery / jQuery,您可以获取实时网站的源代码,将其嵌入到当前页面中,然后使用 JavaScript 提取值。如果您在外部站点上没有适当的 Access-Control-Allow-Origin 标头,您将无法通过 JavaScript 来完成此操作,因此您必须通过您自己的域上的 PHP 脚本来路由它。

我已经完成了一个快速的 JSFiddle 它将获取 JSFiddle Google 验证<meta>使用我上面描述的技术从页面中标记。它在这里:http://jsfiddle.net/USPVJ/1/ http://jsfiddle.net/USPVJ/1/.

我必须强烈反对这样做。通过这样做,您将绕过任何同源限制(这些限制的存在是有充分理由的),并将外部代码注入您的网站。在做任何类似的疯狂事情之前,请确保您充分了解内容。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从外部网站获取值,而该值是由该网站中的 javascript 设置的 的相关文章

  • JavaScript 继承;调用和原型

    要在Javascript中实现继承 通常需要执行以下两个步骤 假设我有一个基类 Animal var Animal function name this name name 我现在想从中派生一个子类 Dog 所以我想说 var Dog fu
  • JavaScript 中的 Promise 有什么意义?

    一个承诺是一个 可能现在可用 或将来可用 或永远不可用的值 来源 MDN 假设我有一个想要处理图片的应用程序 图片已加载 例如在算法在后台使用它之后 或某种其他类型的延迟 现在我想检查一下图片是否可以在future 通过使用承诺 而不是回调
  • React Router v4 不渲染组件

    React Router v4 渲染组件存在问题 在应用程序初始加载时 它将呈现与 URL 相对应的正确组件 但是 任何后续的组件Link单击不会呈现所需的组件 图书馆 反应路由器 4 2 2 https reacttraining com
  • WordPress 插件中的类自动加载器

    我想编写一个类自动加载器以在 WordPress 插件中使用 该插件将安装在多个站点上 我想尽量减少与其他插件发生冲突的机会 自动加载器将是这样的 function autoload name some code here 我的主要问题是
  • 将 Firebase 云消息传递与 Windows 应用程序结合使用

    我在 Android 和 iOS 应用程序中使用 Firebase Cloud Messaging 但是我还有此应用程序的 Windows Mac OS 版本 我想保留相同的逻辑 我知道 Firebase Cloud Messaging 可
  • 使用 JavaScript 移动页面上的按钮

    我的按钮可以移动 但奇怪的是 我无法弄清楚偏移是否有问题 我希望我的按钮随着鼠标光标移动 但现在它的移动方式不是我想要的 有时它会消失 另外 创建的新按钮是重叠的 我不知道如何解决这个问题并拥有更好的外观 var coorA var coo
  • 检查条件并通过 Zend 中的 Regex 识别 url 中的模式

    我正在实现 Zend Regex 路由 并且必须对 url 执行多次检查 例如 如果这是我的网址 http localhost application public index php module controller action 这是
  • 从数据库填充复选框

    我有两个表 第一个由与名称关联的 id 组成 1 汽车 2 火车 3 普通 ETC 第二个表由两个字段 user id 和第一个表中的 id 组成 例如 1 1 2 1 3 当用户转到该页面时 我试图重新填充选定的复选框 首先 您查询数据库
  • 编辑第一个选项名称

    我有以下我无法访问的代码 我想要做的是将一些文本添加到现在为空的第一个选项中 诸如 选择地址 之类的文本
  • 如何正确取消引用然后删除 JavaScript 对象?

    我想知道从内存中完全取消引用 JavaScript 对象的正确方法 确保删除时不会在内存中悬空 并且垃圾收集器会删除该对象 当我看这个问题时在 JavaScript 中删除对象 https stackoverflow com questio
  • 使用 Google 日历源时如何禁用 FullCalendar 中的活动链接?

    我正在使用 FullCalendar 库从 Google 日历加载日历中的事件 不幸的是 事件添加到日历后 它们是可点击的 当您点击该活动时 您会自动重定向到 Google 日历页面以查看该特定活动 或者如果您有足够的访问权限 则可以直接对
  • Vaadin 12 将对象传递给 JavaScript 函数:无法对类进行编码

    Vaadin 12 Kotlin 项目 In my myPage html我有JavaScript myObject redirectToCheckout sessionId 1111 2222 所以我需要调用javaScript函数red
  • 覆盖 jQuery 验证 MVC4 中的默认设置

    要覆盖查询验证插件 请在文件 http docs jquery com Plugins Validation validate toptions 推荐的方式是 selector validate invalidHandler functio
  • 如何在 Zend Framework 3 中注册自定义表单视图助手

    我正在将继承的 Zend Framework 2 应用程序迁移到 Zend Framework 3 并且在注册自定义表单视图助手时遇到了一些困难 这些助手在应用程序使用版本 2 时起作用 主要用于添加标签属性以实现可访问性 例如 这是一个自
  • 如何使用 JavaScript 或 jQuery 克隆 HTML 元素的样式对象?

    我正在尝试克隆元素的样式对象 这应该允许我在更改后重置所述元素的样式 例如 el style left 50px curr style left 50px Modify the elements style The cloned style
  • Rails 3.1+ 的 Jasmine 与 Mocha JavaScript 测试 [已关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我对茉莉花有经验并且非常喜欢它 有谁有 Jasmine 和 Mocha 的经验 特别是 Rails 的经验吗 我想知道是否值得转用 我已经在 J
  • 使用 Enzyme 测试 `React.createRef` api

    我想测试下面的类 它使用React createRef api 不过 快速搜索并没有发现任何这样做的例子 有人成功过吗 我该如何嘲笑裁判 理想情况下我想使用shallow class Main extends React Component
  • 使用 php-ews(Exchange Web 服务)在特定日期后获取电子邮件

    在我的 PHP 脚本中 我需要弄清楚如何检索指定消息 ID 之后或特定日期之后的所有电子邮件 两者都可以 我只需要检索自上次抓取收件箱以来的新电子邮件 这个收件箱每天收到数千封电子邮件 而且我在 30 天内无法删除任何电子邮件 对于初始导入
  • 测量窗口偏移

    有没有一种方法可以测量 jQuery 中窗口的偏移量 以便我可以比较 固定 元素和相对定位元素的位置 我需要能够知道窗口滚动了多远 以便我可以使用该图来计算固定元素的高度 相对于视口顶部 和相对对象的高度 相对于顶部 之间的差异文件的内容
  • 使用velocity.js制作可拖动元素的动画

    我正在使用velocity js 为用户拖动的可拖动 SVG 元素设置动画 然而 velocity js 将先前的 mousemove 坐标排队并通过所有后续的 mousemove 坐标进行动画处理 我想要的是velocity js 不要对

随机推荐

  • 将 HTML 标签转换为小写

    我正在开发 IE6 的 Intranet 项目 我知道 我需要从 div 输出一些 HTML 代码 I use output text container html 但 IE6 输出的代码全部为大写 table border 1 tr td
  • Android 支持 SNMP 吗?

    我想知道Android 2 1 是否支持SNMP 如果不可用 是否可以为Android移植snmp源 请指点一下 如果可用 我如何测试它在我的设备中是否存在 欢迎大家指点 Thanks Sen SNMP4J 2 x可以直接在Android上
  • 如何在 Hive 中编写子查询并使用“In”子句

    如何在 Hive 中使用 In 子句 我想在 Hive 中写这样的东西 从 y 中选择 x 其中 y z 按 x 顺序 从 y 中选择不同的 z 但我没有找到任何方法可以做到这一点 我在 Hive 0 7 中尝试了 In 子句 它抛出错误
  • Mongoid `group()` 条件

    我想为 Mongoid 中的分组提供一个条件 但是如何为条件哈希中的属性发送多个值 这就是我想做的 PageViews collection group cond page id 4e6912618083ab383e000010 4e691
  • 使用 C++ 尾随返回类型时 auto 的含义是什么?

    而不是平常 void foo void cout lt lt Meaning of life lt lt 42 lt lt endl C 11允许是一种替代方案 使用尾随返回 auto bar void gt void cout lt lt
  • 构建将工作表导出为 PDF 的链接

    我一直在尝试将特定工作表导出为 PDF 以用于邮寄目的 并发现我需要它们采用特定格式 我到处寻找要使用的代码 最终发现了这个 https issuetracker google com issues 36761058 comment24 h
  • 水平缩放和垂直缩放是什么意思? [复制]

    这个问题在这里已经有答案了 在数据库位于第四层的三层架构中 什么是scaling horizontally and scaling vertically mean 简单来说 横向扩展就是添加更多服务器 纵向增加服务器的资源 您可以找到更多信
  • Terraformer 合并多个 tfstate 文件

    我正在使用 terraformer 导入 不是 terraform 检查这个 https github com GoogleCloudPlatform terraformer https github com GoogleCloudPlat
  • 无法在c#中启动资源管理器进程,只能启动窗口文件资源管理器

    我想启动资源管理器进程 使用任务栏等 但是当我启动它 在代码中 时 我只打开文件资源管理器的窗口 而不是其余的 但如果我在任务管理器中执行 explorer exe 它就会起作用 就在我在 Windows 7 64 位机器上执行此操作时 在
  • 从S3读取文件到kafka主题

    我遇到的情况是 所有事件数据都存储在 s3 存储桶中 我需要将其从 S3 获取到 ec2 上的 Kafka 主题 我正在使用 CamelAWSS3Connector 但面临连接器无法工作的问题 以下是我面临的错误 2023 01 06 10
  • 在 MVC Action 中启动和忘记异步任务

    我有一个标准的非异步操作 例如 HttpPost public JsonResult StartGeneratePdf int id PdfGenerator Current GenerateAsync id return Json nul
  • xsl-fo fop 0.94 使用 keep-together 和 wrap-option="wrap"

    在 xsl fo fop 0 94 中 将 keep together 与 wrap option wrap 一起使用会忽略换行选项吗 有没有办法让它们都工作
  • 使用 mongoose 在 mongoDB 集合中保留单个文档[重复]

    这个问题在这里已经有答案了 我创建了一个集合 但其中应该保留一个文档 如何确保 mongoose 模式中有单个文档 您可以创建 上限 集合 在其中可以设置可以存储在其中的文档限制 但是 它不会阻止添加另一个文档 不确定 如果您需要该功能 如
  • Rails 中有没有任何方法可以将分钟作为整数转换为天、月等

    我有一个以分钟为单位的值列表 我想轻松地将其转换为最接近的匹配项 如下所示 10 gt 10 minutes 1440 gt 1 day 86400 gt 2 months 525600 gt 1 year Rails 有没有简单的方法可以
  • pyodbc- SQL Server 连接失败

    我一直在尝试连接到 Microsoft SQL Server 我已设置 ODBC 连接并且测试成功 我没有使用 Windows 身份验证连接到 SQL Server 但它不断收到此错误 无法与 Windows 身份验证一起使用 Interf
  • 如果列中的相邻单元格具有相同的值,则突出显示单元格

    我想 遍历 Excel 列 如果前面或后面的单元格具有相同的值 则用颜色标记它 例如 Column A 1 lt highlight 1 lt highlight 1 lt highlight 2 1 3 lt highlight 3 lt
  • 找不到openCV头文件

    最近在学习openCV 我按照 openCV 网站上的教程进行操作 http docs opencv org doc tutorials core how to scan images how to scan images html how
  • 给定数字 p ,在数组中找到两个元素,其乘积 = P

    我正在寻找以下解决方案 Given a array and a number P find two numbers in array whose product equals P 寻找比 O n 2 更好的解决方案 我可以使用额外的空间或其
  • R 中按两列分组和级别并集

    我陷入了一个看似微不足道的问题 但我现在无法弄清楚 我什至不知道如何正确地表述它 如果您有任何建议 欢迎您 我有一个 data frame 我想根据两列对其进行分组 索引 问题是 我想要分组的行在这些列中不共享相同的值 相反 某些行在一列中
  • 如何从外部网站获取值,而该值是由该网站中的 javascript 设置的

    我曾经使用 JQuery 加载外部网站内容 html json 我还获得了一个代理 PHP 页面 可以与一些具有严格来源政策的网站一起使用 我的问题是针对某些网站 在他们的 HTML 源代码中 span 0 00 span 在 Chrome