欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  头条

php获取(curl) 带有cookie的网页数据采集方法

程序员文章站 2022-03-14 23:43:47
...
今天早上呢小编打开我们的(www.php.cn)看到有网友在问php获取页面数据,需要带cookie,不知道如何写,我们网站的专职工程师第一时间响应并给了解决 方案,在这里呢我分享给大家一起学习下php获取网页数据。下面是网友的原文提问。

php get 网页数据想写一个带cookie的网页数据采集,不知道php怎么写,有没有大神解答下.采集网址=“https://steamcommunity.com/tradeoffer/new/partnerinventory/?sessionid=29475e48124c520cf70060dc&partner=76561198124311480&appid=433850&contextid=1”

cookie="sessionid=29475e48124c520cf70060dc;steamLoginSecure=76561198117047952%7C%7C512C7DB04B6A9719E1673019C075AA5ECF2B5032"
能不能写个列子,带诠释的那种 谢谢了 这个cookie 有时限的,如果到期写一个列子就可以了

我们的工作人员提供了使用CURL来违造COOKIE,大家可以看下步聚。关于curl的类型-提供了很多种类型的下载http://www.php.cn/xiazai/leiku/curl

<?php
error_reporting(E_ALL);
ini_set('display_errors','1');
ignore_user_abort();
set_time_limit(0);
$cookie_path='./';
$vars['username']='wang';
$vars['password']='123456';
$method_post=true;
$url='http://ceshi.php.cn/user/usertop_login.asp';
$ch=curl_init();
$params[CURLOPT_URL]=$url;
$params[CURLOPT_HEADER]=0;//是否显示http头信息
$params[CURLOPT_RETURNTRANSFER]=true;
$params[CURLOPT_FOLLOWLOCATION]=0;
$params[CURLOPT_USERAGENT]='Mozilla/5.0 (Windows NT 6.1; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0';
//$params[CURLOPT_SSL_VERIFYPEER]=false;
//$params[CURLOPT_SSL_VERIFYHOST]=false;
$postfields='';
foreach($vars as $k=>$v){
    $postfields.=urlencode($k).'='.urlencode($v).'&'; 
}
$params[CURLOPT_POST]=true;
$params[CURLOPT_POSTFIELDS]=$postfields;
if(isset($_COOKIE['cookie_jar']) && ($_COOKIE['cookie_jar'] || is_file($_COOKIE['cookie_jar']))){
    $params[CURLOPT_COOKIEFILE]=$_COOKIE['cookie_jar'];
}else{
    $cookie_jar=tempnam($cookie_path,'cookie');//产生一个cookie文件
    $params[CURLOPT_COOKIEJAR]=$cookie_jar;//写入cookie信息
    setcookie('cookie_jar',$cookie_jar);//保存cookie路径
}
curl_setopt_array($ch,$params);
$content=curl_exec($ch);
//var_dump(strip_tags($content));
  
//第二步
$params[CURLOPT_FOLLOWLOCATION]=true;
$nexturl='http://ceshi.php.cn/user/vpsadm2.asp?id=100568&go=c';
$params[CURLOPT_URL]=$nexturl;
$params[CURLOPT_POSTFIELDS]='';
curl_setopt_array($ch,$params);
$content=curl_exec($ch);
sleep(5);
 
//第三步
$nexturl='http://ceshi.php.cn/vpsadm/selfvpsmodifyendtime.asp';
$params[CURLOPT_URL]=$nexturl;
$params[CURLOPT_POSTFIELDS]='year=9001&moneynow=10&id=100568&';
curl_setopt_array($ch,$params);
$content=curl_exec($ch);
echo strip_tags($content);
  
curl_close($ch);
相关标签: cookie curl php