用户交互后从网站中提取数据

时间:2014-08-08 17:17:07

标签: html iframe web-applications web data-extraction

我正在尝试创建一个Web应用程序,其中应用程序在用户与之交互后从第三方网站中提取数据。

例如:用户登录xyz.com并在表单中输入一些值并单击提交按钮并显示一个新页面,现在我的应用程序将提取此数据并将其存储在数据库中以供将来参考用户。

我尝试使用<iframe>执行此操作,但有些网站似乎阻止了此请求。如果有人能帮助我解决这个问题,我会很高兴。

干杯。

1 个答案:

答案 0 :(得分:0)

这是一个棘手的情况,因为来自其他一些网站的访问限制(正如Eric所指出的那样)。

简单的答案是使用与相关站点相同的输入构建表单,然后向处理器发送ajax请求,然后将结果解析到数据库中。这个问题是大多数网站不允许跨浏览器发布或抓取,除非涉及到API。

AJAX最常见的是:

XMLHttpRequest cannot load http://test.com/. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://my.domain.com' is therefore not allowed access.

甚至做一个jquery“.contents()”产生:

Uncaught SecurityError: Failed to read the 'contentDocument' property from 'HTMLIFrameElement': Blocked a frame with origin "http://my.domain.com" from accessing a frame with origin "http://www.test.com". Protocols, domains, and ports must match.

所以,除非你有其他网站合作,否则你可能会失败。