ホームページ >見出し >PHP が Cookie を使用して Web ページのデータ収集メソッドを取得 (curl)

PHP が Cookie を使用して Web ページのデータ収集メソッドを取得 (curl)

PHP中文网
PHP中文网オリジナル
2018-05-15 13:54:2710561ブラウズ

今朝、編集者が当社の PHP 中国語 Web サイト (www.php.cn) を開いたところ、一部のネチズンが PHP に Cookie を提供する必要があることを確認しました。 -time エンジニアはすぐに対応し、解決策を見つけたので、PHP を使用して Web ページのデータを取得する方法を皆さんと共有します。以下はネチズンからの元の質問です。

php で Web ページのデータを取得する Cookie を使用して Web ページのデータ コレクションを作成したいのですが、回答できる専門家はいますか? コレクションの URL = "https://steamcommunity" .com/tradeoffer/new/partnerinventory/?sessionid= 29475e48124c520cf70060dc&partner=76561198124311480&appid=433850&contextid=1”

cookie="sessionid=29475e48124c520cf70060dc;スチームLoginSecure=76561198117047 952%7C%7C512C7DB04B6A9719E1673019C075AA5ECF2B5032"
説明付きの例を書いていただけますか?ありがとうございますこの Cookie には期限があります。期限が切れた場合は、例に従ってください。

当社のスタッフが COOKIE に違反するための CURL の使用方法を説明しています。次のステップを読むことができます。 Curl-php の種類について 中国の Web サイトでは、さまざまな種類のダウンロードが提供されています http://www.php.cn/xiazai/leiku/curl

<?php
error_reporting(E_ALL);
ini_set(&#39;display_errors&#39;,&#39;1&#39;);
ignore_user_abort();
set_time_limit(0);
$cookie_path=&#39;./&#39;;
$vars[&#39;username&#39;]=&#39;wang&#39;;
$vars[&#39;password&#39;]=&#39;123456&#39;;
$method_post=true;
$url=&#39;http://ceshi.php.cn/user/usertop_login.asp&#39;;
$ch=curl_init();
$params[CURLOPT_URL]=$url;
$params[CURLOPT_HEADER]=0;//是否显示http头信息
$params[CURLOPT_RETURNTRANSFER]=true;
$params[CURLOPT_FOLLOWLOCATION]=0;
$params[CURLOPT_USERAGENT]=&#39;Mozilla/5.0 (Windows NT 6.1; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0&#39;;
//$params[CURLOPT_SSL_VERIFYPEER]=false;
//$params[CURLOPT_SSL_VERIFYHOST]=false;
$postfields=&#39;&#39;;
foreach($vars as $k=>$v){
    $postfields.=urlencode($k).&#39;=&#39;.urlencode($v).&#39;&&#39;; 
}
$params[CURLOPT_POST]=true;
$params[CURLOPT_POSTFIELDS]=$postfields;
if(isset($_COOKIE[&#39;cookie_jar&#39;]) && ($_COOKIE[&#39;cookie_jar&#39;] || is_file($_COOKIE[&#39;cookie_jar&#39;]))){
    $params[CURLOPT_COOKIEFILE]=$_COOKIE[&#39;cookie_jar&#39;];
}else{
    $cookie_jar=tempnam($cookie_path,&#39;cookie&#39;);//产生一个cookie文件
    $params[CURLOPT_COOKIEJAR]=$cookie_jar;//写入cookie信息
    setcookie(&#39;cookie_jar&#39;,$cookie_jar);//保存cookie路径
}
curl_setopt_array($ch,$params);
$content=curl_exec($ch);
//var_dump(strip_tags($content));
  
//第二步
$params[CURLOPT_FOLLOWLOCATION]=true;
$nexturl=&#39;http://ceshi.php.cn/user/vpsadm2.asp?id=100568&go=c&#39;;
$params[CURLOPT_URL]=$nexturl;
$params[CURLOPT_POSTFIELDS]=&#39;&#39;;
curl_setopt_array($ch,$params);
$content=curl_exec($ch);
sleep(5);
 
//第三步
$nexturl=&#39;http://ceshi.php.cn/vpsadm/selfvpsmodifyendtime.asp&#39;;
$params[CURLOPT_URL]=$nexturl;
$params[CURLOPT_POSTFIELDS]=&#39;year=9001&moneynow=10&id=100568&&#39;;
curl_setopt_array($ch,$params);
$content=curl_exec($ch);
echo strip_tags($content);
  
curl_close($ch);
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。