2010-01-26 61 views
1

我有一个网页,有如下内容(我已经改变了网址为隐私的目的SRC标签,否则查看页面源是相同的):如何刮用JavaScript从网站图片和servlet

<HTML> 
<BODY> 

<script type="text/javascript" src="http://localhost/servlet?publicKey=abcdefg12345678&amp"></script> 

</BODY> 
</HTML> 

生成的页面在浏览器中显示图像,我试图抓取该图像。在我刮掉图像后,我尝试为图像建立索引(请参阅www.tineye.com以了解图像搜索引擎的想法)并存储它们。如果有人知道如何从这些网站上刮取图片,请告诉我。

注:SRC不包含有关图像的任何信息......它只调用使用公钥作为参数给定的servlet。我上面发布的内容完全是我在浏览器(Firefox)中单击查看 - >页面源时看到的。当然,我已经更改了隐私问题的实际URL和公钥,否则所有内容都是相同的。

我似乎已经用于一些横幅类似的技术:http://coldjava.hypermart.net/servlets/banner.htm

+0

另一种方法是在浏览器中打开网页,把网页的快照和写屏幕抓取代码来获得图像。我不确定是否有一个更简单的解决方案来解决我的问题,但如果有问题的话,这将非常棒! :) – Kiril 2010-01-26 21:41:04

回答

1

中的JavaScript可能是操纵DOM和添加图片。因此,图像(为.jpg,.png或.gif)应该是某个JavaScript文件里面,应该是这个样子:

var image = new Image("/path/to/image.jpg"); 

您可以使用正则表达式过滤路径和文件名出的javascript码。

+0

好的,我更新了帖子,以反映发生了什么。当我在Firefox中时,按View-> Page Source,然后显示如上所示的确切源代码。为了保护一些私人信息,我最初修改了这个url,但我已经将它更改为现实中的外观。页面源代码中没有其他内容,上面看到的5行是我查看页面源代码时看到的所有内容。 – Kiril 2010-01-26 21:31:41

+0

你有没有尝试用下载管理器(不是Firefox)下载html文件并查看源代码? – svens 2010-01-26 21:50:02

+0

@svens我已经在本地保存的页面,我看源在记事本+ +并没有什么不同。这与我在firefox中看到的一样。 – Kiril 2010-01-26 21:56:09

1

而是保存HTML文件的本地副本,您应该保存JavaScript文件的本地副本,看看它是如何准确地把图象到HTML文件的DOM。这应该让你找出如何构建请求来获取你需要的图像。