php curl抓取网页指定内容(PHP实现远程模拟登陆最基础的实现功能详解(二))

优采云 发布时间: 2022-04-15 22:19

  php curl抓取网页指定内容(PHP实现远程模拟登陆最基础的实现功能详解(二))

  实现的功能:

  1、远程访问和采集内容

  2、实现PHP网页版FTP上传下载

  3、实现模拟登录:去一个邮件系统,curl可以模拟cookies

  4、 实现接口对接(API)、数据传输等:通过平台发送短信,捕获并传输传输的信息。

  5、实现模拟cookies等:有些属性只能在登录状态下操作。

  如何使用CURL函数:

  PHP默认不支持CURL,需要在php.ini中开启该功能

  ;extension=php_curl.dll 去掉分号

  1 听着,整个操作的第一步就是使用cur_init()函数进行初始化

  

$curl = curl_init('')

  2.使用 curl_setopt() 函数设置选项。

  3.设置后执行事务 curl_exec($curl);

  4 最后关闭 curl_close();

  使用PHP CURL实现传输和获取功能(后传方式):获取远程网页数据

  [代码]$user = "admin";$pass = "admin";$curlPost = "user=$user&pass=$pass";$ch = curl_init(); //初始化一个CURL对象 curl_setopt($ch , CURLOPT_URL, "");//设置需要爬取的URL curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);//设置curl参数询问是否有结果输出到屏幕,如果为真则不返回假设网页中上面的0被1替换,那么需要回显下一个$data curl_setopt($ch, CURLOPT_POST, 1) ;//post 提交 curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost) ;$data = curl_exec($ch);//运行curl,请求网页 curl_close($ch);[/code][/code]

  实现远程模拟登录最基本的部分。

  curl还需要配置用户名和密码,但是被浏览器隐藏了。

  ================================================ === =================================

  curl 模拟登录

  模拟登录:即使不登录php100论坛,也可以查看相应信息。

  分析登录字段--->登录后保持cookie形状--->读取cookie并跳转到相关页面--->抓取次数

  1、模拟登录后创建文件保存cookie内容

  2、通过读取生成的cookie内容模拟用户登录状态

  3、去相关页面获取你需要的东西

  tempname 创建一个临时文件

  tempnam() 函数创建一个具有唯一文件名的临时文件。如果成功,该函数返回新的临时文件名。失败时返回 false。

  tempnam(目录,前缀)

  参数说明

  dir 必需。指定创建临时文件的目录。

  前缀是必需的。指定文件名的开头。

  相当于 fopen 烹饪 fwirte 烹饪 fclose

  它可以返回一个布尔值。使用第三方登录你的QQ和msn是非常危险的,因为它可以记录你的登录状态,并窃取你的用户名和密码。

  使用CURL模拟登录PHP100论坛

  1、分析输入框字段名和登录所需字段个数

  2、保存cookie模拟登录,获取会员金币数量

  代码:

  

//初始化一个cURL对象 $curl = curl_init();//设置需要爬取的URL curl_setopt($curl, CURLOPT_URL, " ");//设置cURL参数保存结果到字符串或输出到屏幕。 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 0);//运行cURL,请求网页 $data = curl_exec($curl);//关闭URL请求 curl_close($curl);$user = "admin";$pass = "admin100";$curlPost = "user=$user&pass=$pass";$ch = curl_init();curl_setopt($ch, CURLOPT_URL, " ");curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);curl_setopt ( $ch, CURLOPT_POST, 1);curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);$data = curl_exec($ch);curl_close($ch);?>if($_POST['user']= = "admin"){ echo "";}else{ echo "";}//print_r($_POST);?>

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线