如何象网海拾贝那样将网页中选定部分(含图片)保存到数据库中,如何从数据库中读取并脱机浏览。(200分)

  • 主题发起人 主题发起人 mumu
  • 开始时间 开始时间
M

mumu

Unregistered / Unconfirmed
GUEST, unregistred user!
下面是关联到网页右键菜单上“采集网页选定部分”的html文档代码。
<script language="VBScript">
Sub OnContextMenu()
NCWEBPAGE=1
NCSELWEBPAGE=2
NCSELTEXT=3
NCALLTEXT=4
NCIMAGE=5
NCALLIMAGE=6
NCALLLINK=7
NCALLLINKTITLE=8
NCSELSOURCECODE=9
NCSOURCECODE=10
On Error Resume Next
set nc=CreateObject("NcActive.NcCollect")
if err<>0 then
MsgBox("网海拾贝没有正确安装")
else
call Nc.Gethtmldoc(NcSelWebPage,external.menuArguments.document) ‘如何实现?
end if
end sub
Call OnContextMenu()
</script>

 
如何选择一部分网页内容我没有做过,不会。但我会将当前整个网页保存下来.
如果有谁知道如何获取网页选定内容的html代码,请贴出来或寄给我:oldice@163.net
我可以再开贴将分奉上。
 
其实两问题都差不多一样的做法
rocedure THtmlSelect.GetSelectAll(const HtmlPage: IDispatch);
var
hDoc: IHTMLDocument2;
TxtRange: IHtmlTxtRange;
Lik: IHTMLElementCollection;
Linklen,i:Integer;
item:OleVariant;
begin
hDoc := HtmlPage as IHTMLDocument2;
TxtRange := hDoc.Selection.CreateRange as IHtmlTxtRange;//选择部分
FrmShowSel := TFrmShowSel.create(nil);
FrmShowSel.Memo1.text := TxtRange.text;
FrmShowSel.Memo2.text := TxtRange.htmlText;
lik:=hdoc.links;
LinkLen:=lik.length;
for i:= 0 to Linklen - 1 do
begin
item:= lik.item(i, varempty);

// FrmShowSel.Memo3.lines.add(item.href);
FrmShowSel.Memo3.lines.add(item.innerHTML);
end;
try
FrmShowSel.ShowModal;
finally
FrmShowSel.Release;
end;

end;
 
学习一下,正在些这后面的东西。
 
用猛禽的moledragdrop。查google就可查到了。
我的《资料收集库》就是用了这个控件。
 
小笨象,用google搜不到moledragdrop,是不是敲错了字母?
 
不知moledragdrop中拖动网页带有链接的图片时,可否把该图片保存下来?我指图片本身,不是指图片的链接
 
总算找到了猛禽的moledragdrop,用google根本找不出来。
那个源码是CB的,里面倒是有个.pas文件,可怎么安装呢?我安装时老是出错,小笨象你出来吱一声儿啊[:D]
 
吱!
我吱了一声了。。。。。。。。。。。。。。。。。。。。。[:D]
报什么错啊?
它保存的与网页源代码,图片你要自己分析网页的源代码后下载才行。
如果你有问题,可以发信给我,控件的问题,delphi的就不要问我了,问作者,CB的我倒是可以回答你一点点。。。
 
哦,如果不能拖动网页上带链接的图片保存的话,我就不用它了
 
我敢肯定的说,没有任何控件能做到你的要求。
一定要分析地址然后下载的。或者从cache中取得。
 
后退
顶部