PHP实现爬虫爬取图片代码实例


Posted in PHP onMarch 03, 2021

文字信息

我们尝试获取表的信息,这里,我们就用某校的课表来代替: 

PHP实现爬虫爬取图片代码实例 

接下来我们就上代码:

a.php

<?php  
header( "Content-type:text/html;Charset=utf-8" );
$ch = curl_init();
$url ="表的链接";
curl_setopt ( $ch , CURLOPT_USERAGENT ,"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.113 Safari/537.36" );
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$content=curl_exec($ch);
preg_match_all("/<td rowspan=\"\d\">(.*?)<\/td>\n<td rowspan=\"\d\">(.*?)<\/td><td rowspan=\"\d\" align=\"\w+\">(.*?)<\/td><td rowspan=\"\d\" align=\"\w+\">(.*?)<\/td><td>(.*?)<\/td>\n<td>(.*?)<\/td><td>(.*?)<\/td>/",$content,$matchs,PREG_SET_ORDER);
//匹配该表所用的正则
var_dump($matchs);

然后咱们就运行一下: 

PHP实现爬虫爬取图片代码实例

成功获取到课表;

图片获取

绝对链接

我们以百度图库的首页为例 

PHP实现爬虫爬取图片代码实例

b.php

<?php 
header( "Content-type:text/html;Charset=utf-8" );
$ch = curl_init();
$url="http://image.baidu.com/";
curl_setopt ($ch , CURLOPT_USERAGENT ,"Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.113 Safari/537.36" );
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$content=curl_exec($ch);
$string=file_get_contents($url);
preg_match_all("/<img([^>]*)\s*src=('|\")([^'\"]+)('|\")/", $string,$matches);
$new_arr=array_unique($matches[3]);
foreach($new_arr as $key) {
	echo "<img src=$key>";
}

然后,我们就获得了下面的页面: 

PHP实现爬虫爬取图片代码实例

相对链接

百度图库的图片的链接大部分是绝对链接,那么当我们遇到网页图片为相对链接的时候,我们该怎么处理呢?其实很简单,我们只需要将循环那部分改为 

PHP实现爬虫爬取图片代码实例 

那么我们就可以同样在浏览器中输出图片了;

到此这篇关于PHP实现爬虫爬取图片代码实例的文章就介绍到这了,更多相关PHP实现爬虫内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
浅析PHP水印技术
Feb 14 PHP
php截取utf-8中文字符串乱码的解决方法
Mar 29 PHP
php iconv() : Detected an illegal character in input string
Dec 05 PHP
PHP 线程安全与非线程安全版本的区别深入解析
Aug 06 PHP
php的一个简单加密解密代码
Jan 14 PHP
php使用fsockopen函数发送post,get请求获取网页内容的方法
Nov 15 PHP
Laravel 5.0 发布 新版本特性详解
Feb 10 PHP
Joomla实现组件中弹出一个模式(modal)窗口的方法
May 04 PHP
非常实用的php验证码类
May 15 PHP
php7下的filesize函数
Sep 30 PHP
PHP代码加密的方法总结
Mar 13 PHP
tp5.1 框架join方法用法实例分析
May 26 PHP
PHP执行系统命令函数实例讲解
Mar 03 #PHP
Git命令之分支详解
Mar 02 #PHP
PHP之header函数详解
Mar 02 #PHP
laravel与thinkphp之间的区别与优缺点
Mar 02 #PHP
php中array_fill函数的实例用法
Mar 02 #PHP
PHP网站常见安全漏洞,及相应防范措施总结
Mar 01 #PHP
php框架知识点的整理和补充
Mar 01 #PHP
You might like
php表单敏感字符过滤类
2014/12/08 PHP
PHP判断手机是IOS还是Android
2015/12/09 PHP
非常重要的php正则表达式详解
2016/01/04 PHP
Expandable &quot;Detail&quot; Table Rows
2007/08/29 Javascript
jQuery 剧场版 你必须知道的javascript
2009/05/27 Javascript
js用Date对象处理时间实现思路及代码
2013/01/31 Javascript
jQuery拖拽插件gridster使用指南
2015/04/21 Javascript
Bootstrap与KnockoutJs相结合实现分页效果实例详解
2016/05/03 Javascript
JavaScript编写带旋转+线条干扰的验证码脚本实例
2016/05/30 Javascript
jQuery获取radio选中项的值实例
2016/06/18 Javascript
浅谈JavaScript中面向对象的的深拷贝和浅拷贝
2016/08/01 Javascript
JS基于递归实现倒计时效果的方法
2016/11/26 Javascript
js实现鼠标左右移动,图片也跟着移动效果
2017/01/25 Javascript
nodejs个人博客开发第四步 数据模型
2017/04/12 NodeJs
jquery插件canvaspercent.js实现百分比圆饼效果
2017/07/18 jQuery
AngularJS表单验证功能
2017/10/19 Javascript
js实现按钮开关单机下拉菜单效果
2018/11/22 Javascript
vue 之 css module的使用方法
2018/12/04 Javascript
JS前端面试必备——基本排序算法原理与实现方法详解【插入/选择/归并/冒泡/快速排序】
2020/02/24 Javascript
在vue中使用防抖函数组件操作
2020/07/26 Javascript
[11:57]《一刀刀一天》第十七期:TI中国军团加油!
2014/05/26 DOTA
用Python制作检测Linux运行信息的工具的教程
2015/04/01 Python
python 如何快速找出两个电子表中数据的差异
2017/05/26 Python
Python数据结构之图的应用示例
2018/05/11 Python
python datetime处理时间小结
2020/04/16 Python
解决django 向mysql中写入中文字符出错的问题
2020/05/18 Python
使用python创建Excel工作簿及工作表过程图解
2020/05/27 Python
HTML5计时器小例子
2013/10/15 HTML / CSS
使用javascript和HTML5 Canvas画的四渐变色播放按钮效果
2014/04/10 HTML / CSS
用C#语言写出在本地创建一个UDP接收端口的具体过程
2016/02/22 面试题
生物化工工艺专业应届生求职信
2013/10/08 职场文书
管理学专业个人求职信范文
2013/12/13 职场文书
企业安全生产承诺书
2014/05/22 职场文书
公安机关正风肃纪剖析材料
2014/10/10 职场文书
JavaScript的Set数据结构详解
2022/02/18 Javascript
【海涛教你打DOTA】黑鸟第一视角解说
2022/04/01 DOTA