分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > IT知识

使用SOCKET获取网页的内容

发布时间:2023-09-06 01:32责任编辑:蔡小小关键词:暂无标签

使用fsockopen()函数来实现获取页面信息,完整代码如下

//设置字符集(由于要抓取的网易网站字符集编码是gbk编码)header("content-type:text/html;charset=gb2312");//设置中国时区date_default_timezone_set('PRC');//页面域名$hostname = "news.163.com";//"www.163.com";//请求方式$method = 'GET';//URI资源唯一标识$target ?= '/17/1225/09/D6G89EED000189FH.html'; ???????// Specific program//所带参数$getValues = '';// or $getValues = "?key1=value1&key2=value2";$port = 80;$fp = fsockopen($hostname, $port=80, $errno, $errstr, 30);if (!$fp) { ???echo "####Failed!$errstr ($errno)<br/>\n";} else { ???//注意空格 ???$out = "$method $target$getValues HTTP/1.1\r\n"; //原$out = "GET / HTTP/1.1\r\n"; ???//$out .= "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8\r\n"; ???//$out .= "Accept-Encoding: gzip, deflate\r\n"; ???//注意冒号后面要有一个空格 ???$out .= "Accept-Language: zh-CN,zh;q=0.9\r\n"; ???$out .= "User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36\r\n"; ???$out .= "Host: $hostname\r\n"; ???$out .= "Cache-Control: max-age=0\r\n"; ???$out .= "Connection: Close\r\n\r\n"; ???fwrite($fp, $out); ???while (!feof($fp)) { ???????echo fgets($fp, 128); ???} ???fclose($fp);}

根据以上示例,可以进行通过设置请求头信息,即可实现任意端口的访问

代码执行后效果

使用SOCKET获取网页的内容

原文地址:https://www.cnblogs.com/renzhicai/p/8110416.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved