564|0

35

帖子

0

资源

一粒金砂(中级)

php爬虫框架的使用

 

网络爬虫:互联网就像一张巨大的蜘蛛网,里面存放了很多的数据。爬虫就是一只沿着网络线去获取自己所需数据的小蜘蛛,数据采集指的是我们向目标网站发出请求,然后获取到数据后把有用数据提取的程序。所需要用到的技术就是模拟浏览器向站点发出请求行为,把站点返回的各种数据保存到本地在进行有用数据的过滤。

爬虫的框架有很多,Scrapy是用纯Python实现一个为了爬取网站数据、提取结构性数据而编写的应用框架,用途非常广泛。这几天使用PHP的爬虫框架爬取了一些数据,发现还是挺方便的,这里放下php程序直中配置代理的简单示例,为自己的学习做个小笔记。

<?php

   // 要访问的目标页面

   $url = "http://httpbin.org/ip";

   $urls = "https://httpbin.org/ip";

   // 代理服务器(产品官网 www.16yun.cn)

   define("PROXY_SERVER", "tcp://t.16yun.cn:31111");

   // 代理身份信息

   define("PROXY_USER", "username");

   define("PROXY_PASS", "password");

   $proxyAuth = base64_encode(PROXY_USER . ":" . PROXY_PASS);

   // 设置 Proxy tunnel

   $tunnel = rand(1,10000);

   $headers = implode("\r\n", [

       "Proxy-Authorization: Basic {$proxyAuth}",

       "Proxy-Tunnel: ${tunnel}",

   ]);

   $sniServer = parse_url($urls, PHP_URL_HOST);

   $options = [

       "http" => [

           "proxy"  => PROXY_SERVER,

           "header" => $headers,

           "method" => "GET",

           'request_fulluri' => true,

       ],

       'ssl' => array(

               'SNI_enabled' => true, // Disable SNI for https over http proxies

               'SNI_server_name' => $sniServer

       )

   ];

   print($url);

   $context = stream_context_create($options);

   $result = file_get_contents($url, false, $context);

   var_dump($result);

   // 访问 HTTPS 页面

   print($urls);

   $context = stream_context_create($options);

   $result = file_get_contents($urls, false, $context);

   var_dump($result);

虽然只是一段小小的示例,但是也是自己学习路上的基石,希望自己可以积土成山,学到更多的技术


回复
您需要登录后才可以回帖 登录 | 注册

关闭
站长推荐上一条 1/5 下一条

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表