使用php实现爬虫程序 套取网站的图片实例
<?php
//去采集a67 图片 网站链接 http://www.xiamov.com/list/1/p.2 你也可以采集其他网站的图片
//创建链接 dedecms--a67
//设置执行不超时
set_time_limit(0);//fsockopen() 函数 第一个参数是指主机 第二个参数指的是端口号 一般我们默认为80端口 第三个参数是错误编号 第四个参数是返回错误的字符串 第五个参数指的是链接时长 我上面写的是30秒 如果30秒没有链接到对方主机 则会返回链接失败
$conn=fsockopen("www.xiamov.com",80,$errno,$errstr,30);
if(!$conn){die("链接失败");
}//说话 协议
$httpstr="GET /list/1/p.2 HTTP/1.1\r\n";
$httpstr.="Host: www.xiamov.com\r\n";
$httpstr.="Connection: Close\r\n\r\n";//发送http请求 对方就应该有回应
fwrite($conn,$httpstr,strlen($httpstr));//看看a67 网站会送的是什么东西
$res="";
while(!feof($conn)){$res.=fread($conn,1024);
}
fclose($conn);
//file_put_contents("D:/1.txt", $res);
//echo $res;
//我要找到该页面的图片资源 img src
//<img alt="邪恶小分队下载" title="邪恶小分队下载" src="http://img.xiamov.com/vod/2016-07/578e2cc52da30.jpg">
$reg1='/<img alt="[^"]*" title="[^"]*" src="([^"]*)"/i'; //这个是匹配上面的<img 的正则表达式 [^"]* 这个表示的是 只要不是“ 就不断匹配 这个很常用 可以学习
preg_match_all($reg1,$res,$arr1);//把$arr1[1]遍历 并取出各个图片的uri
foreach($arr1[1] as $imgurl){//echo"<br/>".$imgurl;$imguri=str_replace("http://img.xiamov.com","",$imgurl);//echo"<br/>".$imguri;//再次发出请求 要图片 注意 这里的主机发生变化了 主机变化为img.xiamov.com
$conn=fsockopen("img.xiamov.com",80,$errno,$errstr,30);//组织httpstr$httpstr="GET $imguri HTTP/1.1\r\n";
$httpstr.="Host: img.xiamov.com\r\n";
$httpstr.="Connection: Close\r\n\r\n";//发出请求 img
fwrite($conn,$httpstr,strlen($httpstr));
$res2="";
while(!feof($conn)){$res2.=fread($conn,1024);
}
fclose($conn);//看看$res2是什么
//file_put_contents("D:/1.txt", $res2);
//exit();
//我们把图片的数据从$res2截取出来 保存成图片$pos=strpos($res2,"\r\n\r\n");
$imgres=substr($res2,$pos+4); //后面加的数字很重要 这个数字4 是本人不断测试才得到的
$fileinfo=pathinfo($imguri);
file_put_contents("./myimages/".$fileinfo['basename'], $imgres);
//die;
sleep(2); //我们可以使用sleep函数 来延迟发送请求
}die("成功取回图片");
以上是采取A67电影网中电影列表的部分图片 通过以上的爬取程序 我们就可以爬取任何网站的图片了
转载于:https://www.cnblogs.com/phpwbj/p/5713129.html
使用php实现爬虫程序 套取网站的图片实例相关推荐
- Python爬虫 爬取网站全部图片实战
一.获得图片地址 和 图片名称 1.进入网址之后 按F12 打开开发人员工具点击elemnts 2.点击下图的小箭头 选择主图中的任意一个图片 那我们这里点击第一个 图片 3.显示控制台 为了验 ...
- 靖哥哥教你如何用java做爬虫抓取网站美女图片(详解步骤)
原文 https://www.jggbk.com/blogs/article/258.html
- python 爬虫 抓取网站img图片
from getHtml import getHtmlWinthIp from getHtml import getHtml from bs4 import BeautifulSoup from ur ...
- python爬虫防屏蔽_python爬虫程序如何预防被限制
有一些网站不喜欢被爬虫程序访问,所以会检测连接对象,如果是爬虫程序,也就是非人点击访问,它就会不让你继续访问,所以为了要让程序可以正常运行,需要隐藏自己的爬虫程序的身份.此时,我们就可以通过设置Use ...
- 火车头采集器 采集https网站 以及网站cookie 避免 蜘蛛 爬虫 程序等
火车头采集器 采集https网站 并不是想象中的困难,有时https网站只是用了这个加密协议,但是事实上的数据并没有加密,所以仍然可以采集. 如果确实有困难的可以通过,http分析软件来确认地址,如H ...
- 使用PyCharm编写Scrapy爬虫程序,爬取古诗词网站
使用PyCharm编写Scrapy爬虫程序,爬取古诗词网站 本次测试案例参考厦门大学数据库实验室 链接: https://dblab.xmu.edu.cn/blog/3937/ 在PyCharm中新建 ...
- python 模拟各大网站登陆方式,以及一些爬虫程序
仅供练习使用,代码注释很详细 收集了一些各大网站登陆方式, 和一些网站的爬虫程序,有的是通过 selenium 登录,有的是通过抓包直接模拟登录,有的是利用 scrapy,希望对小白有所帮助,本项目用 ...
- python模拟各大网站登陆方式,以及一些爬虫程序,麻麻再也不用担心我学爬虫啦!...
python模拟各大网站登陆方式,以及一些爬虫程序 仅供练习使用,代码注释很详细 收集了一些各大网站登陆方式, 和一些网站的爬虫程序,有的是通过selenium登录,有的是通过抓包直接模拟登录,有的是 ...
- python模拟各大网站登陆方式,以及一些爬虫程序, 麻麻再也不用担心我学爬虫啦!...
python模拟各大网站登陆方式,以及一些爬虫程序 仅供练习使用,代码注释很详细 收集了一些各大网站登陆方式, 和一些网站的爬虫程序,有的是通过selenium登录,有的是通过抓包直接模拟登录,有的是 ...
最新文章
- ssis foreach 使用ADO记录集
- 雅虎正开发聊天机器人挑战对手 不过似乎很难成功
- 不安装oracle客户端如何用plsql连接oracle
- MongoDB索引策略和索引类型
- Effective Java -- 思维导图
- Gojs学习史(一):基本定义
- Centos 云服务器磁盘占用率90%以上的排查解决
- 北理计算机语言智能与社会计算,北京理工大学校长张军描绘智慧社会:人在思、云在算、端在造...
- python语言中、外部模块先导入、再使用_python引入导入自定义模块和外部文件--转载Sumomo的博客...
- 苹果iCloud大调整:干掉1TB版本,2TB降价
- openwrt udp服务器_开启tftp服务器 tftp服务器的含义
- 解决SVN语言包安装后无法出现下拉框选择
- 继电器控制实验程序c语言,继电器原理及实验程序
- @Value 注解用法
- BSGS(拔山盖世算法),北上广深算法
- Gartner:上云步伐加速,中国公有云部署最佳实践
- Ridge Regression and Kernel Ridge Regression
- return 和return:redirect:/**
- HTML网页版雷电游戏
- Redis Cluste部署