文字信息

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


这里写图片描述 

接下来我们就上代码:

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);

然后咱们就运行一下: 


这里写图片描述

成功获取到课表;

图片获取

绝对链接

我们以百度图库的乐虎体育为例 


这里写图片描述

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实现爬虫爬取图片代码实例的更多相关文章

  1. 关于PHP方法参数的那一些事

    前言在所有的编程语言中,方法或者函数,都可以传递一些参数进来进行业务逻辑的处理或者计算。这没什么可说的,但是在PHP......

  2. PHP基础之与MySQL那些事

    前言这篇文章会对PHP的MySQL扩展库,MySQLI的扩展库,SQL批量执行,事务控制等等进行一些简单的讲解。My......

  3. docker中实现安装php拓展步骤讲解

    一:php核心拓展包安装在docker中安装的php有一些核心的拓展包,他们一般放置在/usr/src/php/ex......

  4. PHP中PDO关闭连接的方法问题

    在之前我们手写 mysql 的连接操作时,一般都会使用 mysql_close() 来进行关闭数据库连接的操作。不过......

  5. 【函数分享】每日PHP函数分享

    str_pad() 使用另一个字符串填充字符串为指定长度 。string str_pad ( string $i......

  6. PHP实现chrome表单请求数据转换为接口使用的json数据

    为什么要写转换程序最近在做旧版程序迁移,旧的架构为常规的MVC模式,新版架构全部改成restful架构。由于改版数据......

  7. PHP 非常实用下载远程图片

    /*** 下载远程图片* @param string $url 图片的绝对url* @param string $f......

  8. PHP设计模式之原型模式示例详解

    前言原型模式其实更形象的来说应该叫克隆模式。它主要的行为是对对象进行克隆,但是又把被克隆的对象称之为最初的原型,于是......

  9. 用PHP实现的服务端socket具体实例

    实现方法如下:使用到的相关函数: socket_create、socket_set_block、socket_bin......

  10. php结合GD库实现中文验证码的简单方法

    前言上一次写了一个常见的验证码,现在玩一下中文的验证码,顺便升级一下写的代码流程基本差不多先看GD库开启了没生成中文......

随机推荐

  1. 用python-webdriver实现自动填表的示例代码

    在日常工作中常常需要重复填写某些表单,如果人工完成,费时费力,而且网络延迟令人十分崩溃。如果能够用程序实现自动填表,......

  2. 基于Redo Log和Undo Log的MySQL崩溃恢复流程

    在之前的文章「简单了解InnoDB底层原理」聊了一下MySQL的Buffer Pool。这里再简单提一嘴,Buffe......

  3. Linux下最常用的10个文件压缩工具

    作者简介李先生(Lemon),高级运维工程师(自称),SRE专家(目标),梦想在35岁买一辆保时捷。喜欢钻研底层技术......

  4. sqlserver查询去掉重复数据的实现

    说明:只要数据表“列名”数据相同,则说明是两条重复的数据(ID为数据表的主键自动增长)。推荐使用方法一-- 方法一s......

  5. 全面解析java final关键字

    根据上下文环境,Java 的关键字 final 的含义有些微的不同,但通常它指的是“这是不能被改变的”。防止改变有两......

  6. JavaScript中的Proxy对象

    Js中Proxy对象Proxy对象用于定义基本操作的自定义行为,例如属性查找、赋值、枚举、函数调用等。语法const......

  7. Vue 实现可视化拖拽页面编辑器

    在线地址 (用梯子会更快些)可视化页面编辑器,听起来可望不可即是吧,先来张动图观摩观摩一番!实现这功能之前,在网上参......

  8. Java Lombok简介、使用、工作原理、优缺点

    简介官方介绍Project Lombok is a java library that automatically ......

  9. ORACLE 利用 REPLACE函数替换字段字符串

    REPLACE(string,s1,s2) string 希望被替换的字符或变量 s1 被替换的字符串 s2 要替换......

  10. Vue实现一种简单的无限循环滚动动画的示例

    本文主要介绍了Vue实现一种简单的无限循环滚动动画的示例,分享给大家,具体如下:先看实现效果:这种类似轮播的效果,通......