<?php
header("Content-type:text/html; charset=utf-8");
/*
$pattern =
'/xxx(.*)yyyy/isU'; //i 不区分大小,s表示点号匹配换行 U 防贪婪匹配
$url = "";
$ch =
curl_init($url);
$options = array(
            CURLOPT_RETURNTRANSFER
=> true,         // return web page 以字符流返回不输出浏览器
         //
CURLOPT_HEADER         => false,        // don't return headers
        
// CURLOPT_FOLLOWLOCATION => true,         // follow redirects
         //
CURLOPT_ENCODING       => "",           // handle all encodings
          
 //CURLOPT_USERAGENT      => "spider",     // who am i
         //
CURLOPT_AUTOREFERER    => true,         // set referer on redirect
      
     CURLOPT_CONNECTTIMEOUT => 120,          // timeout on connect
      
     CURLOPT_TIMEOUT        => 120,          // timeout on response
      
  // CURLOPT_MAXREDIRS      => 10,           // stop after 10 redirects
  
      // CURLOPT_POST            => 1,            // i am sending post
data
            //   CURLOPT_POSTFIELDS     => $curl_data,    // this are
my post vars
        //  CURLOPT_SSL_VERIFYHOST => 0,            // don't
verify ssl
        //  CURLOPT_SSL_VERIFYPEER => false,        //
  
      // CURLOPT_VERBOSE        => 1                //
    );
      
 curl_setopt_array($ch, $options);
        $texts = curl_exec($ch);
      
 if(preg_match($pattern, $texts, $arr)){
        //$arr[0] 包含正则中的字符
      
 // $arr[1] 不包含正则中的字符
        }

if(preg_match_all($pattern,
$texts, $arr)){
            //返回一个二维数组,包含多次匹配数据

}
      
 curl_close($ch);

function
imgDownload($url, $filename){
            // $url 正确的文件名 如 $url =
'xxx/1.jpg'
            // $filename 正确的文件名 如 $filename = 'yyyyy/1.jpg'
  
         if(!$url || !$filename){
                return false;
          
 }
            $str = file_get_contents($url);
            $fp =
fopen($filename, 'a');
            fwrite($fp, $str);
          
 fclose($fp);
        }
        $url = 'img/2.jpg';
        $filename =
'ok/2.jpg';
        imgDownload($url, $filename)
*/
?>

PHP curl 采集内容之规则 及图片下载方法2的更多相关文章

  1. PHP curl 采集内容之规则 1

    <?phpheader("Content-type:text/html; charset=utf-8");$pattern = '/xxx(.*)yyyy/isU'; //i ...

  2. CSharpGL(19)用glReadPixels把渲染的内容保存为PNG图片(C#)

    CSharpGL(19)用glReadPixels把渲染的内容保存为PNG图片(C#) 效果图 本文解决了将OpenGL渲染出来的内容保存到PNG图片的方法. 下载 CSharpGL已在GitHub开 ...

  3. php ecshop采集商品添加规则

    ecshop采集商品添加规则 <?phpheader("Content-type:text/html;charset=utf-8"); function get($url) ...

  4. php curl 采集

    curl 采集五个步骤: 1.curl_init()初始化curl 2.curl_setopt()设置传输数据和参数 3.curl_exec()执行传输并获取返回数据 4.curl_errono()返 ...

  5. 如何给wordpress首页自动显示文章内容的第一个图片

    敏捷个人手机应用中使用到的数据来源于wordpress中,因为自己写的页面,所以可以自己写代码获取文章内容的第一个图片作为文章缩略图来显示,这样用户看到首页时图文并茂,感觉会好一些. 现在后台简单的使 ...

  6. PHP用正则批量替换Img中src内容,用正则表达式获取图片路径实现缩略图功能

    PHP用正则批量替换Img中src内容,用正则表达式获取图片路径实现缩略图功能 网上很多正则表达式只能获取或者替换一个img的src内容,或者只能替换固定的字符串,要动态替换多个图片内容的试了几个小时 ...

  7. Curl 采集乱码 gzip 原因及解决方案 utf-8

    用curl获取一个经过gzip压缩后的网页时返回乱码 原因大体就是服务器返回的Content-Encoding的值和网页的编码不同,造成curl解码出问题,直接将gzip或deflate编码的文件下载 ...

  8. ueditor编辑文章时候,复制粘贴内容,原来的图片不能显示

    ueditor编辑文章时候.当现有文章有图片的时候, 再复制粘贴文本进去的时候.里面的图片就不能显示了, 编辑器查看文章Html代码,图片路径显示为:src="http://localhos ...

  9. 第三百四十一节,Python分布式爬虫打造搜索引擎Scrapy精讲—编写spiders爬虫文件循环抓取内容—meta属性返回指定值给回调函数—Scrapy内置图片下载器

    第三百四十一节,Python分布式爬虫打造搜索引擎Scrapy精讲—编写spiders爬虫文件循环抓取内容—meta属性返回指定值给回调函数—Scrapy内置图片下载器 编写spiders爬虫文件循环 ...

随机推荐

  1. PL/SQL基础

    打印  hi set serveroutput on   --打开输出开关 declare           --说明部分(变量说明,光标申明或者例外说明) begin           --程序 ...

  2. 在Visual Studio中使用Pseudovariables来帮助调试

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:在Visual Studio中使用Pseudovariables来帮助调试.

  3. android开源项目学习

    FBReaderJ FBReaderJ用于Android平台的电子书阅读器,它支持多种电子书籍格式包括:oeb.ePub和fb2.此外还支持直接读取zip.tar和gzip等压缩文档. 项目地址:ht ...

  4. [Android]Fragment源代码分析(二) 状态

    我们上一讲,抛出来一个问题,就是当Activity的onCreateView的时候,是怎样构造Fragment中的View參数.要回答这个问题我们先要了解Fragment的状态,这是Fragment管 ...

  5. Oracle Linux 6.3下安装Oracle 11g R2(11.2.0.3)

    本文主要描写叙述了在Oracle Linux 6.3下安装Oracle 11gR2(11.2.0.3).从Oracle 11g開始,Oracle官方站点不再提供其Patch的下载链接,须要使用Meat ...

  6. WordPress公布新文章Email通知注冊用户

    非常多WordPress博客都开放了用户注冊的功能,用户能够參与到博客的内容建设其中来.也就是一个博客由多个用户来写.如今有这种需求,怎样实如今某一个用户发表文章后.其它用户都能收到Email通知?以 ...

  7. C++ CheckListBox

    实现过程 CCheckListBox    listbox1;     listbox1.AddString("葡萄");     listbox1.AddString(" ...

  8. cardslib

    https://github.com/gabrielemariotti/cardslib

  9. xml配置和基于java类的bean配置搭配使用

    如果同时使用了xml配置,和java类的bean配置(当然估计项目中一般不会这样), 在初始化容器指定资源文件的时候可能会比较麻烦 此时我们可以把基于java类的bean配置整合到xml中,或xml的 ...

  10. Android Studio 完美修改应用包名

    我们平时新建项目有些朋友可能当时就是随意写的一个包名,然后在项目过程中, 又感觉这个包名不太好,所以就要对包名进行修改,根据我们正常的修改方式,是这样的. 在种情况是只能修改最外层的那个名称, 如果我 ...