得到相同的信息firebug可以获得?

时间:2011-07-07 03:28:51

标签: mysql programming-languages network-programming firebug

这一切都可以追溯到我试图“索引”网页的一些原始问题。我原本试图在java中专门做这个,但现在我正在用任何语言打开它。

之前我尝试在java中使用HTML单元和其他方法来获取我需要的信息但是没有成功。

我需要从一个网页上获取的信息,我可以很容易地用firebug找到,我想知道是否有任何复制萤火虫专门为我的需求做的事情。当我打开firebug时,我转到NET选项卡,然后转到XHR选项卡,它会显示一个不断更新的页面,其中包含服务器正在更新的信息。然后,当我点击请求并查看响应它有我需要的信息时,这一切都没有刷新我正在尝试做的网页(更不用说它输出的变量没有显示在网页的html)

那么有人能指出我的方向是正确的吗? (我将把这些信息放到一个mysql数据库中,这就是为什么我把它添加为标签,但仍然不知道最好使用哪种语言)

编辑:服务器上的这些请求有点随机,虽然它显示了当我尝试访问firefox中的url时它们来自哪个url,但它会尝试打开一个名为application / jos的东西

3 个答案:

答案 0 :(得分:3)

乔恩,我相当肯定你在这里混淆了几种技术,简单的答案是它不能像那样工作。 Firebug专门工作,因为它作为浏览器的一部分运行,并且(据我所知)在一组更宽松的指令下运行,而不是嵌入在页面中的JavaScript脚本。

对于记录,JavaScript与Java不同。

如果您尝试记录AJAX调用,最好的办法是让服务器端应用程序在收到时将调用的IP,useragent,cookie和完整的URI记录到您的数据库中。它将远远优于任何客户端解决方案。

在与您的问题更相关的说明中,假设每个人都已阅读您发布的其他问题并不是一种好习惯。一般来说,“我们”没有。 “我们”是引用,因为,嗯,你知道。 :)你回去接受你问过的问题的一些答案也不会有什么坏处。

答案 1 :(得分:1)

如果您使用的是jQuery等库,则可能会有一个选项,例如jQuery ajaxSendajaxComplete回调。这些可以将请求发送到您的服务器以记录这些事件(注意不要以无限循环结束)。

答案 2 :(得分:1)

所以,问题是?:

  1. 在其他人的服务器上托管其他人的网页时,您想要提取选择的信息吗?
  2. 使用cURL,Python,Java等太痛苦了,因为数据是通过AJAX不断更新的(需要JS解释器)?
  3. 由于XSS安全性,普通的jQuery或iFrame拦截无效。
  4. Ditto,一个书签 - 它的另一个缺点是每次都需要手动触发。

  5. 如果这一切都正确,那么还有其他3种方法:

    1. 开发一个浏览器插件...更难,但有能力在一个包中做所有事情。

    2. 开发用户脚本。这样做更容易,Greasemonkey等技术可以处理XSS问题。

    3. 使用浏览器宏技术,例如Chickenfoot。这些都有加分和缺点 - 我不会进入。

    4. 使用Greasemonkey:
      根据网站的不同,这可能非常简单。如果您想记录数据,最大的缺点是您需要自己的Web服务器和Web应用程序。但是这个服务器可以在XAMPP stack本地托管,或者您熟悉的任何Web应用程序技术。

      截取页面的AJAX数据的示例代码位于:Using Greasemonkey and jQuery to intercept JSON/AJAX data from a page, and process it

      请注意,如果目标页面不使用jQuery,则使用的库(如果有)通常具有类似的拦截功能。或者,听DOMSubtreeModified总是有效。