php 模拟登陆(不带验证码)采集数据
这里模拟表单登陆窗口
提交代码部分
1,生成session_id保存到 cookie
$login_url = 'http://www.96net.com.cn/Login.php';
$cookie_file = dirname(__FILE__)."/pic.cookie";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $login_url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file);
curl_exec($ch);
curl_close($ch);
2,处理提交的登陆的数据
if($_POST['acti']=='tj'){
$userid=$_POST['userid'];
$password=$_POST['password'];
$_post_url = 'http://www.96net.com.cn/login.php?action=Login'; //登录表单提交地址
$post = "userid=$userid&password=$password";
$ch12 = curl_init();
curl_setopt($ch12, CURLOPT_URL, $_post_url);
curl_setopt($ch12, CURLOPT_HEADER, false);
curl_setopt($ch12, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch12, CURLOPT_POSTFIELDS, $post); //提交方式为post
curl_setopt($ch12, CURLOPT_COOKIEFILE, $cookie_file);
curl_exec($ch12);
curl_close($ch12);
//以上表示登陆成功
//以下开始采集数据
$data_url19 = "http://www.96net.com.cn/xxxxxxx.php?id=10"; //数据所在地址
$ch19 = curl_init();
curl_setopt($ch19, CURLOPT_URL, $data_url19);
curl_setopt($ch19, CURLOPT_HEADER, false);
curl_setopt($ch19, CURLOPT_HEADER, 0);
curl_setopt($ch19, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch19, CURLOPT_COOKIEFILE, $cookie_file);
$content12 = curl_exec($ch19);
file_put_contents("./content0/31-35/net" . $k . ".txt", $content12); //文件存放的位置
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端