• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

询问如何带cookie访问网站下载源码保存到文件

php 搞代码 3年前 (2022-01-23) 25次浏览 已收录 0个评论
文章目录[隐藏]

苦苦搜寻没有结果,
请问带cookie访问个网站,读取源码,处理保存到文件或输出出来呢,新手请教不胜感激。

我自己写的,这个但是只能输出原页面效果,看不到源码。。。加了个循环却无法工作。。

<?php $url = 'http://weibo.com/***/follow'; $data = array ('foo' => 'bar'); $data = http_build_<strong style="color:transparent">本文来源gaodai#ma#com搞@@代~&码*网/</strong><strong>搞gaodaima代码</strong>query($data); $opts = array ( 'http' => array (    'method' => 'GET',    'header'=> "Content-type: text/html" .                      "Content-Length: " . strlen($data) . "\r\n" . "cookie:***\r\n",'content' => $data ) ); $context = stream_context_create($opts); $html = file_get_contents($url,'',$context); //var_dump($html);$lines = file($html);//我估计这行可能写的不对//var_dump($lines);foreach($lines as $key => $value){   echo "{$key}:".htmlspecialchars($value)."<br>\n";}?> 

回复讨论(解决方案)

你 $html = file_get_contents($url,”,$context); 后
$html 中不就是文件内容了吗?
echo $html;
看一下就知道了

谢版主回复,echo $html 我试过了,浏览器刷新出来的整个页面,而不是我想要的源码效果。
就好比

<?php$url = "http://www.baidu.com/";$lines = file($url);foreach($lines as $key => $value){   echo "{$key}:".htmlspecialchars($value)."<br>\n";}?> 

输出的结果就是全部的源码,是想要这样的。不知道我的描述是否清楚。

自己把$html保存到一个文件,再用文本编辑器打开看看

自己把$html保存到一个文件,再用文本编辑器打开看看
你说的方法刚才试了一下是可以的,然后参照网上别人的实例,直接file_get_contents就好了,但是乱码的问题。。。

<?php $url = 'http://weibo.com/**/follow'; $data = array ('foo' => 'bar'); $data = http_build_query($data); $opts = array ( 'http' => array (    'method' => 'GET',    'header'=> "Content-type: text/html" .                      "Content-Length: " . strlen($data) . "\r\n" . "cookie:**\r\n",'content' => $data ) ); $context = stream_context_create($opts); $html = file_get_contents($url,'',$context); //$source = htmlspecialchars($html);//$code = preg_match(pattern, subject)echo htmlspecialchars($html);//var_dump($html);//$lines = file($url);//$lines = file_get_contents($url);//var_dump($lines);//$files = fopen("text.txt","w");//fwrite($files,$lines);/*foreach($html as $key => $value){   echo "{$key}:".htmlspecialchars($value)."<br>\n";}*///fclose($lines);?> 

乱码是因为你的编码没有统一,用header设置下字符集。
header(“content-type:text/html;charset=utf-8”);


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:询问如何带cookie访问网站下载源码保存到文件
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址