HTTP应用探险
日期:2004年10月3日10:56:50>>>>lurex版权所有
目标:
1.能成功向网页提交POST数据,主要实现自动登陆、文章发表的功能。 2.做一个类似于网络爬虫的东东动态从网络上抓东西下来。
实现一:成功POST 网页数据
实验一.对某一表单全英文填写,然后POST到服务器。
表单内容:两个文本输入框title、art,服务器处理后,会把输入内容保存并显示在页面上。
----代码开始---- <?php $title=$_POST[title]; $art=$_POST[art];
$fd=fopen("cc.txt",w); fwrite($fd,$title . $art); fclose($fd); ?> <?php echo $title;?> <?php echo $art; ?><form name="form1" method="post" action="index.php"> <p> <input name="title" type="text" id="title"> </p> <p> <input name="art" type="text" id="art"> <input type="submit" name="Submit" value="提交"> </p> </form> ———代码结束------
新建一工程添加IDHTTP、MEMO、BUTTON
----------代码开始-----------
procedure TForm1.Button1Click(Sender: TObject); var
Response: TStringStream; postList: TStrings; begin Response := TStringStream.Create(''); postList := TStringList.Create; try postList.Add('title=myfirstwork'); postList.Add('art=helloevryone'); IdHTTP1.Post('http://192.9.200.28/index.php', postList, Response); finally Memo1.Lines.Text := Response.DataString; Response.Free; postList.Free; end; --------代码结束---------
结果可以发现:cc.txt文件内容改变了,自动发送英文表单成功。
(注:当我把提交内容换成中文,并加入空格,发现照样可以提交成功,原来POST内容和URL参数不同,不必再进行字符转换和替代)

|