Javascript 下载验证码图像的脚本

Javascript 下载验证码图像的脚本,javascript,html,captcha,Javascript,Html,Captcha,为了完全无恶意的目的——特别是机器学习,我想下载一个巨大的验证码图像数据集。然而,CAPTCHA总是使用一些模糊的javascript实现的,这使得在没有浏览器的情况下获取实际图像成为一项非常重要的任务,至少对我这个javascript新手来说是这样 那么,有没有人能给我一些有用的建议,告诉我如何使用完全不在浏览器中的脚本下载模糊单词的图像?请不要把我指向一个已经收集到的模糊单词的数据集——我需要从一个特定的网站上为这个特定的实验收集图像 谢谢 编辑:这个问题的另一种提问方式非常简单。当您在使用

为了完全无恶意的目的——特别是机器学习,我想下载一个巨大的验证码图像数据集。然而,CAPTCHA总是使用一些模糊的javascript实现的,这使得在没有浏览器的情况下获取实际图像成为一项非常重要的任务,至少对我这个javascript新手来说是这样

那么,有没有人能给我一些有用的建议,告诉我如何使用完全不在浏览器中的脚本下载模糊单词的图像?请不要把我指向一个已经收集到的模糊单词的数据集——我需要从一个特定的网站上为这个特定的实验收集图像

谢谢


编辑:这个问题的另一种提问方式非常简单。当您在使用复杂javascript的网站上单击“查看源代码”时,您会看到脚本引用,但这就是您所看到的全部内容。但是,如果您单击“将网页另存为…”(在firefox中),然后查看保存的网页的源代码,javascript将被解析,新的html和图像(至少在ASIRRA和reCAPTCHA的情况下)将位于源代码中。如何使用脚本模拟“将网页另存为…”行为?这是一个重要的网页编码问题,所以请不要再问我的动机与此!从现在起,我可以在所有涉及脚本的web开发中使用这些知识,我相信其他堆栈溢出访问者也可以

为什么不自己获取验证码并生成图像?雷帕查也有空。


更新:我知道你想要一个特定的网站,但如果你有自己的网站,你可以调整它,以提供与目标网站相同类型的图像。

与运行该网站的人员联系,并要求提供数据集。如果你试图以任何可疑的方式下载很多图片,你很快就会被列入他们的杀戮名单,这意味着你不会再从他们那里得到任何东西


CAPTCHA旨在保护人们免受虐待,从他们的角度来看,你所做的事情看起来就像是虐待。

在等待答案的过程中,我不断挖掘,最终找到了一种黑客破解的方式来完成我想要的事情

首先,这是一个有点复杂的问题(至少对像我这样的javascript新手来说)的原因是ASIRRA的图像是通过javascript加载到网页上的,javascript是一种客户端技术。当您使用wget或curl之类的工具下载网页时,这是一个问题,因为它实际上并不运行javascript,它只是下载源html。因此,您无法获得图像

然而,我意识到使用firefox的“另存页面为…”正是我所需要的。它运行了加载图像的javascript,然后将其保存到我硬盘上众所周知的目录结构中。这正是我想要自动化的。所以我找到了一个名为“iMacros”的firefox插件,并编写了以下宏:

VERSION BUILD=6240709 RECORDER=FX
TAB T=1
URL GOTO=http://www.asirra.com/examples/ExampleService.html
SAVEAS TYPE=CPL FOLDER=C:\Cat-Dog\Downloads  FILE=*

设置为循环10000次,效果非常好。事实上,由于它总是保存到同一个文件夹中,重复的图像会被覆盖(这是我想要的)。

问问网站的所有者如何?如果它不是邪恶的…该网站实际上是微软的研究项目ASIRRA,它使用猫和狗而不是晦涩的单词-但它的实现方式基本相同。他们有一个公共数据集,但它太小了。@Greg:同意,礼貌的做法是在大量下载内容和占用大量带宽之前联系网站所有者。直接从PetFinder的源文件中提取图片不是更好吗?这样你可以同时带来分类信息(猫/狗)信息。为我辩护,我刚刚读了一篇学术论文,其中研究人员做了我想做的事情。另外,我会以一个非常合理的速率ping这个站点,没有什么极端的(特别是对于微软)。我想从问这个问题中获得的主要东西是使用脚本访问这些图像的web体验,没有人真正帮助过我。但我想我自己也快弄明白了,所以我会发布我的想法。我已经有自己的服务器和网站运行recaptcha,但同样的问题仍然存在。如果我浏览我的网站,我可以看到新的模糊单词,但如果我使用终端或脚本,我无法找到图像的位置来自动下载。现在又回到了我最初的问题——如何在没有浏览器的情况下直接使用脚本获取图像?