找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2941|回复: 0

GuzzleHttp爬虫技巧

[复制链接]

93

主题

6

回帖

113

积分

初中生

热心值
2
IT币
595
贡献值
1
QQ
发表于 2020-9-14 16:38:05 | 显示全部楼层 |阅读模式
PHP是简单易用的web编程语言,研发人员可以很快的建立web项目,通过开源库可以成倍的提高效率,研发人员经常面临需要临时采集其它网站数据的需求,这种情况下相对来python等语言库就有所欠缺。GuzzleHttp通过代理IP的配合,就可以解决这一困惑,甚至通过异步请求和并发请求实现js扩展功能,结合symphony的Dom分析HTML页面Dom元素和XML文件就能快速采集数据啦。下面将部分代码列出:
<?php   
    namespace App\Console\Commands;   
    use Illuminate\Console\Command;
    class Test16Proxy extends Command
    {
        /**
         * The name and signature of the console command.
         *
         * @var string
         */
        protected $signature = 'test:16proxy';
        /**
         * The console command description.
         *
         * @var string
         */
        protected $description = 'Command description';
        /**
         * Create a new command instance.
         *
         * @return void
         */
        public function __construct()
        {
            parent::__construct();
        }
        /**
         * Execute the console command.
         *
         * @return mixed
         */
        public function handle()
        {
            $client = new \GuzzleHttp\Client();
            // 要访问的目标页面
            $targetUrl = "http://httpbin.org/ip";
            // 代理服务器(产品官网 www.16yun.cn)
            define("PROXY_SERVER", "t.16yun.cn:31111");
            // 代理身份信息
            define("PROXY_USER", "username");
            define("PROXY_PASS", "password");
            $proxyAuth = base64_encode(PROXY_USER . ":" . PROXY_PASS);
            $options = [
                "proxy"  => PROXY_SERVER,
                "headers" => [
                    "Proxy-Authorization" => "Basic " . $proxyAuth
                ]
            ];
            //print_r($options);
            $result = $client->request('GET', $targetUrl, $options);
            var_dump($result->getBody()->getContents());
        }
    }
?>

ITbang.Net是一个IT教程分享社区!

寻找论坛资源请善用论坛搜索功能,这样会为你节约不少学习时间;

论坛资源如有过期链接失效等,请到教程反馈区发帖反馈,我们会为您良好的行为点赞加分!

回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

免责声明:
IT帮论坛所发布的一切视频资源、工具软件和网络技术相关的文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该资源,请支持正版软件,购买注册,得到更好的正版服务。

Mail To:Service@ITbang.Net

QQ|Archiver|手机版|小黑屋|IT帮社区 ( 冀ICP备19002104号-2 )

GMT+8, 2025-5-4 00:24 , Processed in 0.171835 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表