目的:程序中有一个关键字符串,文本框中输入一个网址,点查找按钮,打开网页并获取源码,查出网页中是否存在该关键字符串,如果不存在则跳转下一页面继续查找,直到找到此关键字符然后提出。
目前已实现获取到源码阶段,下面不会了,希望大家可以给个思路,应该如何实现,另外获取源码时程序处于假死状态,这个如何处理呢?
目前已实现获取到源码阶段,下面不会了,希望大家可以给个思路,应该如何实现,另外获取源码时程序处于假死状态,这个如何处理呢?
解决方案 »
- 用DBNavigator1.BtnClick(nbPost)模拟点击DBNavigator的post 按钮时,如何知道POST按钮是可以点击的?
- 向各位高手求教!如何获取离屏表面的HDC?
- 请问:
- 救救我!“Delphi32发生错误(ADORTL60.BPL)。Delphi32即将关闭。如果仍有问题,请尝试重新启动计算机。”
- 我的IE怎么在按Ctrl + Space 时调用的输入法不是我设置的默认的输入法呀?
- 帮忙看看
- 请大家关照 :Report Builder 对象问题对于大家很简单
- 组件开发问题:使用RegisterPropertyEditor必须USES DesignIntf文件,运行时报错:找不到ComponentDesigner文件
- 救命啊
- 如何在Delphi中读写Word文档
- 限制edit只能输入英文或数字
- 急,望各位帮帮忙,关于多个文本框判断问题
楼上说的没错!你使用的是WebBrowser吗?
var
Session,
HttpFile:HINTERNET;
szSizeBuffer:Pointer;
dwLengthSizeBuffer:DWord;
dwReserved:DWord;
dwFileSize:DWord;
dwBytesRead:DWord;
Contents:PChar;
begin
Session:=InternetOpen('',0,niL,niL,0);
HttpFile:=InternetOpenUrl(Session,PChar(Url),niL,0,0,0);
dwLengthSizeBuffer:=1024;
HttpQueryInfo(HttpFile,5,szSizeBuffer,dwLengthSizeBuffer,dwReserved);
GetMem(Contents,dwFileSize);
InternetReadFile(HttpFile,Contents,dwFileSize,dwBytesRead);
InternetCloseHandle(HttpFile);
InternetCloseHandle(Session);
Result:=StrPas(Contents);
FreeMem(Contents);
end;procedure TForm1.Button1Click(Sender: TObject);
var
i,j: integer;
add,str,url,test:string;
begin memo1.Text:=GetWebPage('http://www.baidu.com/s?wd=电影下载&pn=0');
str:=memo1.Text; //源码内容
url:=Edit1.Text; //域名地址 i:=1;
while i <> 0 do
begin
i:=Pos(Url,Trim(str));
add:=getstr(str,'innerHTML,''url'':this.href,''p1''','y'':');
Delete(str,i,Pos(Url,str)+1);
end; Edit3.Text := ADD; //排名显示出来end;我想实现的思路是,在百度搜索电影下载,获取源码后,查询源码里是否有我输入的网址,如果第一页没有,调转下一页继续查找,直到找到。也可以在20页范围内查找。<table border="0" cellpadding="0" cellspacing="0" id="1"><tr><td class=f><a onmousedown="return c({'fm':'as','F':'779337CA','F1':'9D73F1E4','F2':'4CA6DF6A','F3':'54E5243F','T':'1253848585','title':this.innerHTML,'url':this.href,'p1':1,'y':'3DFE4FF3'})" href="http://www.dygod.net/" target="_blank" ><font size="3">电影天堂_迅雷电影_最新<font color="#c60a00">电影下载</font>_dygod</font></a><br><font size=-1>免费迅雷<font color="#c60a00">电影下载</font>,<font color="#c60a00">电影下载</font>,最好的迅雷<font color="#c60a00">电影下载</font>站<br><font color="#008000">www.dygod.net/ 82K 2009-9-24 </font> - <a href="http://cache.baidu.com/c?m=9f65cb4a8c8507ed4fece763105392230e54f73577828d4368d4e414c4224655023ba3ed28356003c4b2797077ae5e2ce8e73702207254a0eac89f3cdbace422&p=c262d05485cc42ed08e2963750&user=baidu" target="_blank" class="m">百度快照</a> <br><a class="m" target="_blank" href="s?cl=2&wd=%B5%E7%D3%B0%CF%C2%D4%D8%20site:www.dygod.net">www.dygod.net 上的更多结果</a></font></td></tr></table>查询后每页基本有10块这样的分类,红色那里的P1后面就是排名数,我想如果符合我们输入的网址,就把P1后面的数取出来,不符合继续下一页查找。