我想用程序实现提交这个网页内的表单,并读取根据提交内容生成的生辰图网页,用idhttp试验多次,只能下载回来提交前的表单,怎样才能取回带有生辰图的网页呢?http://www.go108.com.cn/unit007/item00209/result.php
解决方案 »
- 大家来抢分阿!
- 用FileStream对Form中的TStringGrid和TEdit中的内容进行数据存储,总是出现问题,请指教!源代码如下:
- TADOTable的Filter属性
- 送于用SetWindowsHookEx函数截取QQ键盘消息问题。
- DBGrid被选中后,如后取得选中行的数据信息??
- 诚邀Delphi版的朋友参加本周末的分布式开发讨论。
- 关于updown的问题,在线等待!
- 如何在WebBrowser中得到IdHTTP的内容 (delphi7)
- 关于SQl Server中的SQL Parser Object Library 1.0(SQLPARSER.DLL)?
- 怎样连续用NMHTTP控件GET数据?
- 能够打印的树控件...
- treelist焦点所在的单元格的颜色如何改变?
用 Fiddler 抓取提交的表单参数。
var
Request: TStrings;
Response: TStringStream;
ss:Tstringlist;
begin
idhttp1.HandleRedirects := true;
idhttp1.ReadTimeout := 60000;
//idhttp1.ConnectTimeout := 60000;
IdHTTP1.Request.ContentType := 'application/x-www-form-urlencoded';
SS := TStringList.Create;
SS.Add('nickname=nicevoice&birthdayyear=1988&birthdaymonth=8&birthday=11&birthdayhour=19&birthdaymin=30&longitude=128&latitude=35&timezonevalue=-8&recom='); request := TStringList.Create;
Response := TStringStream.Create(''); //request.Add('q=test');
try
//IdHTTP1.Get('http://www.go108.com.cn/unit007/item00209/index.php', Response);
IdHTTP1.Post('http://www.go108.com.cn/unit007/item00209/result.php',ss, Response);
Memo1.Lines.Text :=Response.DataString;
except
on e:
Exception do
begin
application.MessageBox('连接失败','错误',MB_OK);
end;
end;
end;
另外你要是post,表单内容都要提交,不管必须不必须。 题外你创建了的东西都要free。
2.区分大小写
3.birthdayDay,你写的是birthday,错了procedure TForm1.Button1Click(Sender: TObject);
var
ss: TStringList;
mstr: string;
begin
idhttp1.HandleRedirects := True;
ss := TStringList.Create;
ss.Add('nickName=nicevoice');
ss.Add('birthdayYear=1988');
ss.Add('birthdayMonth=8');
ss.Add('birthdayDay=11');
ss.Add('birthdayHour=19');
ss.Add('birthdayMin=30');
ss.Add('place1=北京市');
ss.Add('place2=北京市'); mstr := idhttp1.Post('http://www.go108.com.cn/unit007/item00209/result.php',ss);
Memo1.Lines.Add(mstr);
ss.Destroy;
end;