Browser 通过屏幕抓取从浏览器获取数据

Browser 通过屏幕抓取从浏览器获取数据,browser,screen-scraping,Browser,Screen Scraping,我已经看了几个相关的问题,但它们没有包含我正在寻找的答案。所以,我的问题是: 我的工作场所有几个web应用程序,它们是使用不同的框架编写的,而作者们早就要求更新功能了。因此,我每天都要经历相同的动作序列,相当于几千字节的文件大小 我试图解析页面源代码,但作者的编程技术无处不在。有些人甚至故意隐藏代码,不让数据显示为文本,这是没有理由的,因为他们编写的代码是公司的资产。长话短说,我意识到如果我可以复制和粘贴这些页面的文本内容,我可以处理这些数据,比解析页面源代码来获取文本要容易得多(这有时是完全不

我已经看了几个相关的问题,但它们没有包含我正在寻找的答案。所以,我的问题是:

我的工作场所有几个web应用程序,它们是使用不同的框架编写的,而作者们早就要求更新功能了。因此,我每天都要经历相同的动作序列,相当于几千字节的文件大小

我试图解析页面源代码,但作者的编程技术无处不在。有些人甚至故意隐藏代码,不让数据显示为文本,这是没有理由的,因为他们编写的代码是公司的资产。长话短说,我意识到如果我可以复制和粘贴这些页面的文本内容,我可以处理这些数据,比解析页面源代码来获取文本要容易得多(这有时是完全不可能的)

因此,我现在正在寻找一个浏览器插件(在windows或linux环境中)或windows或linux上的同等基于文本的工具,它将加载这些页面,并在调用时将屏幕上的文本保存到文件中

不管我怎么努力,我还是空手而归

我不想利用第三方屏幕抓取网站的服务,因为数据是公司机密,外部人士无法访问。一切都必须发生在客户端,因为我无法访问这些应用程序运行的服务器(主要是windows前端的IIS和后端的oracle db。正如我之前所解释的,中间层是任何人的猜测,从原生oracle应用程序到weblogic到tomcat,再到一些内部开发的java/javascript


提前感谢所有的帮助

像这样的东西怎么样:
将HTML页面转换为文本的免费软件

任何链接、lynx或w3m都可以满足您的需要,它们是文本浏览器,您可以通过以下方式从网页中转储文本,例如:

w3m -dump http://www.google.com > g.txt

在寻找了一年多的答案后,我意识到,只要我使用windows,它的现代版本就是autohotkey,这是我的救星

我打开网页,将其最大化,放置光标(mousemove,x,y),然后左键单击(mouseclick,L),然后发送ctrl-A和ctrl-C

瞧!所有东西都在剪贴板中。然后我激活我的unix会话(winactivate PuTTY),并发送相应的按键命令来启动我选择的编辑器(即vi),最后发送shift Insert以将剪贴板粘贴到我的文档中。当然,然后保存并退出

另外,在保存文档之后,我可以调用我选择的脚本来解析此文件,并将感兴趣的部分返回给我


我知道它不是防弹的,但对我来说,它在很大程度上是有帮助的。事实上,我可以用这种方法做任何我想做的事情。

你有过使用这种方法的个人经历吗?大多数独立应用程序只是尝试剥离页面源代码的html部分,并将其余部分提供给你。我的页面是javascript heav正如我所说,有些东西是故意模糊的。到目前为止,刮屏的唯一方法是用鼠标选择浏览器窗口上的文本,然后按住ctrl-c键复制文本,然后粘贴到记事本会话中。嗨,我个人没有这方面的经验。但是考虑到你的问题,如果页面是通过Javascript呈现的,像Greasemonkey这样的东西可以让你编写额外的脚本,从javascript填充的元素中获取值吗?然后你可以通过Ajax将收集到的值提交到另一个web表单,瞧,你已经得到了数据!啊…Greasemonkey脚本很可能正是我所需要的。问题是,我既不精通Javasc,也不精通Javasc我也不知道如何编写greasemonkey脚本来提取这些值。我希望,其他人已经这样做了,我可以重用他们的工作。因为每个网页都不同,我认为不可能编写一个全面的脚本来处理这个问题。你需要先检查相关页面的源代码要确定要从中提取数据的所有html元素,那么在这一点上,编写一个javascript函数来提取数据就很容易了。您是否可以访问网页代码,以便将jQuery库添加到包含的脚本中?如果可以,添加一个简单的$(文档)将非常容易.ready函数,该函数读取值并通过$.ajax()提交调用您选择的页面。否则,greasemonkey就是最好的选择。只需引用所需的HTML元素来检索它们的值或innerHTML。这本来就是我想要的,但是,代码模糊的页面会吐出它们在现代浏览器下无法显示的文本,使得输出毫无用处。比如,有一个从数据库中提取密码并逐字逐句输出的页面,其中包含未使用的字符。你可以在chrome上查看输出,比如说chrome,你可以看到一个密码,你可以突出显示并用鼠标复制。当你转储lynx输出时,你看到的是所有字符,可用和不可用,使输出无效。我认为因为lynx不懂javascript和样式。