php实现自动登录网站并抓取网页

ewili 2013-06-29 02:44:17
目的:
我打算使用php的curl去登录英策估值(http://www.wistrategy.com/)的登陆页面http://www.wistrategy.com/manage/login.aspx 然后抓取目标网页(比如:http://www.wistrategy.com/stock/000606.html)的源码。
该网站对于没有登录的用户,只能给予三次免费查询机会,而登录的用户则可以无限制的查询,
所以我现在希望使用curl登录该网站然后抓取目标网页的内容。

实现:

我用curl写了一个模拟登录和抓取的程序但是没有任何效果找半天没找到错误原因
代码如下:
<?php

$cookie_jar=tempnam('./tmp','cookie');
$login_url="http://www.wistrategy.com/login.aspx";
$post_fields="user=abc1234&pwdinput=abc1234";

$ch = curl_init($login_url);
curl_setopt($ch, CURLOPT_HEADER,0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar);
curl_setopt($ch, CURLOPT_POSTFIELDS,$post_fields);
curl_exec($ch);
curl_close($ch);

$url="http://www.wistrategy.com/stock/000606.html";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER,0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar);
$content=curl_exec($ch);
curl_close($ch);

?>

问题:
请各位帮忙看下上面的代码错在什么地方,那个网站的登录用户名:abc1234 密码:abc1234
...全文
604 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Y.A.K.E 2013-07-09
  • 打赏
  • 举报
回复
用cookie直接获取.一次登录后果断保存cookie提供以后访问
lds_741 2013-07-05
  • 打赏
  • 举报
回复
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_jar); 缺这个吧
xuzuning 2013-06-29
  • 打赏
  • 举报
回复
你只有 $content=curl_exec($ch); 并没有打印出 $content,当然什么都看不到了
hankcs 2013-06-29
  • 打赏
  • 举报
回复
关注,我也有这种需求
------------------------------------------------------AutoCSDN签名档------------------------------------------------------
码农场——码农播种代码、放牧思想的农场!

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧