谁有delphi 获取动态网页的并且自动填写数据的,提交的示范!

谁有delphi 获取动态网页的并且自动填写数据的,提交的示范!,第1张

举个在百度首页填写搜索内容后,提交查询的例子。

打开Delphi, 新建VCL窗口程序。 添加一个 TWebBrowser 组件和 TEdit 文件框在窗口上。 给TWebBrowser改个名字WEB。 在WEB的NavigateComplete2事件中加入如下代码:

procedure TForm1WEBNavigateComplete2(ASender: TObject; const pDisp: IDispatch;

var URL: OleVariant);

var

s, kw: Variant;

t: string;

begin

// 获取页面对象

s := WEBDocument;

// 判断当前页面是不是百度主页

Edit1Text := sURL;

if sURL <> '>

$url = "网站地址目录";

$queryServer = curl_init();

curl_setopt($queryServer, CURLOPT_URL, $url);

curl_setopt($queryServer, CURLOPT_HEADER, 0);

curl_setopt($queryServer, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($queryServer, CURLOPT_RETURNTRANSFER, true);

curl_setopt($queryServer, CURLOPT_CONNECTTIMEOUT, 10);

curl_setopt($queryServer, CURLOPT_TIMEOUT, 30);

$html = curl_exec($queryServer);

$html = iconv('UTF-8','GBK//IGNORE',$html); //如果你需要是的数据是utf-8编码的,这一行可以注销,如果需要gbk编码的,请保留如果出现乱码,就是一行的问题,你自己调着试吧

//echo $holder;exit; 此处可以输出来测试

$html = str_replace(array("\n","\r","\t"),"",$html);

$preg = '/<table\s+width=\"800\"[^>]+>()<\/table>/';

preg_match_all($preg,$html,$out);

//匹配每行

preg_match_all('/<tr[^>]+>()<\/tr>/',$out[1][0],$tr);

//匹配每个td

$result = array();

$match = '/<td+>([^<]+)<\/td>/U';

foreach( $tr[0] as $key => $value ){

preg_match_all($match,$value,$arr);

$result[] = $arr[1];

}

//输出测试,$result就是你要的数据,至于你要怎么输出显示格式,那就随心调就好了。

foreach( $result as $key => $value ){

echo implode("\t",$value);

echo "<br>";

}

exit;

以上就是关于谁有delphi 获取动态网页的并且自动填写数据的,提交的示范!全部的内容,包括:谁有delphi 获取动态网页的并且自动填写数据的,提交的示范!、PHP怎样抓取网页代码中动态显示的数据、如何利用php抓取网站动态产生的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9348929.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存