【问题标题】:How to pass the steam age check using curl?如何使用 curl 通过 Steam 年龄检查?
【发布时间】:2017-03-12 09:40:44
【问题描述】:

我对 curl 有疑问。我想尝试使用 curl 访问 Steam 游戏页面,但我必须通过年龄检查。由于curl无法加载javascript,如何点击按钮进入游戏页面的问题。这是我的代码。

$url = "http://store.steampowered.com/app/312660/";
$file = __DIR__ . DIRECTORY_SEPARATOR . "cookie.txt";
$postData = array(
'ageDay' => '31',
'ageMonth' => 'July',
'ageYear' => '1993'
);
$ch = curl_init();

curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch,CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13");
curl_setopt($ch,CURLOPT_POSTFIELDS,$postData);
curl_setopt($ch,CURLOPT_COOKIESESSION, true);
curl_setopt($ch,CURLOPT_COOKIEJAR,$file); 
curl_setopt($ch,CURLOPT_COOKIEFILE,$file);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);

curl_close($ch);

这里有人可以帮助我绕过 Valve 实施的年龄验证系统吗?无论如何,是否可以使用 curl 方法单击按钮?谢谢。

【问题讨论】:

  • 是的,我还在学习编程,我真的需要帮助。
  • post var_dump($data),你有什么回应?

标签: php curl


【解决方案1】:

这里是示例代码,现在您将获得游戏视频,因为我们强制使用 cookie。所以你不会看到年龄限制屏幕

<?php
$url = "http://store.steampowered.com/app/312660/";
// $file = __DIR__ . DIRECTORY_SEPARATOR . "cookie.txt";
// $postData = array(
// 'ageDay' => '31',
// 'ageMonth' => 'July',
// 'ageYear' => '1993'
// );
$ch = curl_init();

curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch,CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13");
curl_setopt($ch,CURLOPT_POSTFIELDS,$postData);
// curl_setopt($ch,CURLOPT_COOKIESESSION, true);
// curl_setopt($ch,CURLOPT_COOKIEJAR,$file); 
// curl_setopt($ch,CURLOPT_COOKIEFILE,$file);
$strCookie = 'mature_content=' . 1 . '; path=/';
curl_setopt( $ch, CURLOPT_COOKIE, $strCookie );

curl_setopt($ch,CURLOPT_FOLLOWLOCATION,true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);

curl_close($ch);
echo $data;
?>

【讨论】:

  • 你是怎么知道cookie的? $strCookie = 'mature_content=' 。 1. ';路径=/';
  • 在按钮单击期间调试 java 脚本调用。它调用一个函数
【解决方案2】:

复选框选择和继续按钮单击未提交任何帖子数据/表单提交。它只是设置一个 cookie 并重定向到位置http://store.steampowered.com/app/312660/

所以在你的 curl 调用中对位置 http://store.steampowered.com/app/312660/agecheck 。设置所需的 cookie 并调用此 URL,您将被重定向到上述 URL,游戏视频开始播放 hhtml 内容,您将得到响应。

你可以通过设置cookie来做同样的事情,这样你就会看到视频播放页面

【讨论】:

  • 我可以知道如何设置cookie吗?如果您能制作样品,那就太好了。谢谢
猜你喜欢
  • 2021-03-30
  • 2021-06-29
  • 2016-02-09
  • 2019-09-17
  • 2012-01-18
  • 2014-04-04
  • 1970-01-01
  • 2011-08-01
  • 2012-12-15
相关资源
最近更新 更多