2015-02-05 70 views
-1

我是JavaScript和FireFox cfx SDK的新手。 我想写一个FireFox的扩展,通过在它内部递归爬行来完整保存一个URL的内容。该程序可分为以下几个阶段:递归保存网站

1- Saving contents of a given URL(including images, text, URLs and etc). 
2- Crawling pages(a.Extracting URLs inside the page, b. Recursively traversing them). 

我很感激,如果有人给我一些提示(如关键字研究或链接阅读,这部分可以用CFX SDK来完成,哪一部分用JavaScript等)还有一件事要说,请求页面应该用当前会话完成(就像用户在标签中打开URL一样)[用户可能已经登录他的账户]

任何东西可能会有所帮助,谢谢提前:-)

+1

您是要求社区为您设计扩展吗?还是你在寻求资源?这不是很清楚。 – leDominatre 2015-02-05 23:45:32

+0

@DominatorX这是一个有效的问题,请看我为什么认为这些倒票无效。回复:Vast API – Noitidart 2015-02-06 00:53:36

+1

其实这些问题非常有效。我现在是一个6k的指针,我问了如何对窗口进行图标化,而另一个用户为我勾画了这个窗口。我用它作为插件的起点。看到这里的主题,看看解决方案如何提供我可以在我的插件中使用的头脑风暴算法:http://stackoverflow.com/a/24030011/1828637 – Noitidart 2015-02-06 01:07:42

回答

1

这是一个有效的问题。由于XPCOM/HTML5 /其他API非常庞大,因此初学者需要帮助指出正确的方向。

这是我会怎么做:

你可以的XMLHttpRequest(Sending Data to a Server using JavaScript(Firefox Addon))和获取一个网页的HTML。然后将页面传递到像这样的解析器:(How to parse a XML string in a Firefox addon using Add-on SDK),然后你可以去

var parser = new DOMParser(); 
var doc = parser.parseFromString(reponseFromAjax, "text/html"); 

var URLs = doc.getElementsByTagName('a'); 
var IMGs = doc.getElementsByTagName('img'); 

得到所有URL页面上的。如果用户没有问过这个问题,我向你保证,我们将可能有另一种情况通过在AJAX返回文本上运行字符串操作而苦恼的开发人员。还有可能是正则表达式的返回文本。

要从cfx AddonSDK使用这些XPCOM,请参阅我链接的xmlhttprequest主题中的注释。它说明如何导入铬(Cu/Ci/etc)