这一切都可以追溯到我试图“索引”网页的一些原始问题。我原本试图在java中专门做这个,但现在我正在用任何语言打开它。
之前我尝试在java中使用HTML单元和其他方法来获取我需要的信息但是没有成功。
我需要从一个网页上获取的信息,我可以很容易地用firebug找到,我想知道是否有任何复制萤火虫专门为我的需求做的事情。当我打开firebug时,我转到NET选项卡,然后转到XHR选项卡,它会显示一个不断更新的页面,其中包含服务器正在更新的信息。然后,当我点击请求并查看响应它有我需要的信息时,这一切都没有刷新我正在尝试做的网页(更不用说它输出的变量没有显示在网页的html)
那么有人能指出我的方向是正确的吗? (我将把这些信息放到一个mysql数据库中,这就是为什么我把它添加为标签,但仍然不知道最好使用哪种语言)
编辑:服务器上的这些请求有点随机,虽然它显示了当我尝试访问firefox中的url时它们来自哪个url,但它会尝试打开一个名为application / jos的东西
答案 0 :(得分:3)
对于记录,JavaScript与Java不同。
如果您尝试记录AJAX调用,最好的办法是让服务器端应用程序在收到时将调用的IP,useragent,cookie和完整的URI记录到您的数据库中。它将远远优于任何客户端解决方案。
在与您的问题更相关的说明中,假设每个人都已阅读您发布的其他问题并不是一种好习惯。一般来说,“我们”没有。 “我们”是引用,因为,嗯,你知道。 :)你回去接受你问过的问题的一些答案也不会有什么坏处。
答案 1 :(得分:1)
如果您使用的是jQuery等库,则可能会有一个选项,例如jQuery ajaxSend
和ajaxComplete
回调。这些可以将请求发送到您的服务器以记录这些事件(注意不要以无限循环结束)。
答案 2 :(得分:1)
所以,问题是?:
如果这一切都正确,那么还有其他3种方法:
开发一个浏览器插件...更难,但有能力在一个包中做所有事情。
开发用户脚本。这样做更容易,Greasemonkey等技术可以处理XSS问题。
使用浏览器宏技术,例如Chickenfoot。这些都有加分和缺点 - 我不会进入。
使用Greasemonkey:
根据网站的不同,这可能非常简单。如果您想记录数据,最大的缺点是您需要自己的Web服务器和Web应用程序。但是这个服务器可以在XAMPP stack本地托管,或者您熟悉的任何Web应用程序技术。
截取页面的AJAX数据的示例代码位于:Using Greasemonkey and jQuery to intercept JSON/AJAX data from a page, and process it。
请注意,如果目标页面不使用jQuery,则使用的库(如果有)通常具有类似的拦截功能。或者,听DOMSubtreeModified
总是有效。