如何创建屏幕抓取? “我想知道周期”

时间:2009-03-25 23:02:37

标签: .net asp.net javascript html

我想制作一个屏幕与这个完全相同的想法http://www.vimeo.com/1626505我想知道的是如何做到这一点? - 当用户点击书签时,它会向我的服务器发送URL然后我的服务器将返回到客户端页面,其中包含将加载iframe加载的报废javascript文件,java脚本将废弃当前的数据页面并放在iframe上。

- Bookmarklet只会向我的服务器发送URL,我的服务器将使用.Net代码打开网址并将其废弃,从中获取所需数据,然后向客户端发送填充了正确数据的iframe。

哪个是对的?还是有另一种方式?为什么它的权利不是另一个?

2 个答案:

答案 0 :(得分:2)

我不知道它是否与Vimeo中的那个一样,但这是一个使用C#的简单服务器端实现:

 WebRequest wrContent = WebRequest.Create("http://www.site.com/yourtargetpage.html");
 Stream objStream = wrContent.GetResponse().GetResponseStream();
 StreamReader objStreamReader = new StreamReader(objStream);
 Content = objStreamReader.ReadToEnd();
 DataBind();

“Content”是一个字符串变量,在页面类的头部声明:

 protected string Content;

将其放在您希望显示内容的ASPX页面中:

 <%# Content %>

这很容易。

答案 1 :(得分:2)

<强>客户端

赞成

页面已经加载到那里 使用JS

解析DOM相对容易

缺点

JS开启了吗? 用户的机器有多快? 如果用户在中途浏览时会发生什么?

服务器端

赞成

比JS更多的控制(我假设) 页面嗅探应该很快

缺点

页面被点击两次(网络流量增加)
您的服务器实际上必须解析/处理页面(它如何扩展?)

再也想不到了(我确定我错过了很多)。最重要的是,它可以衡量客户端/服务器端技能与带宽和服务器负载的关系。