浏览器抓取网页(PHP手册(再次一句一句以强调)手册真乃圣经)
优采云 发布时间: 2022-01-12 11:11浏览器抓取网页(PHP手册(再次一句一句以强调)手册真乃圣经)
抓取网页内容,PHP内置了几个可以实现的函数,如file()、file_get_contents()等,都支持URL参数。但是要实现更复杂的操作,这些函数就无能为力了。
cURL 是一个文件传输工具,它使用 URL 语法在命令行下工作。 cURL 提供了一个 PHP 扩展。使用此扩展,您可以完全模拟浏览器操作,就像使用浏览器浏览网页一样。可以设置header内容、设置cookie数据、POST数据、上传文件、设置代理等。其实我们这里讨论的爬取网页内容只是它常用的应用之一。
cURL 官方网站:
PHP cURL 扩展:
在 Windows 下添加这个扩展就像加载 php_curl.dll 一样简单。去掉php.ini文件extension=php_curl.dll前面的分号,将php_curl.dll复制到PHP扩展目录或者C:\Windows\system32目录下重启web服务器。 php_curl.dll 在 PHP 的 ZIP 包中提供。
在Linux下,需要先安装cURL。一种方法是编译成PHP,编译配置时加上--with-curl[=DIR]。另一种方法是将其编译成一个PHP模块来加载,编译cURL模块的方法和编译其他PHP模块的方法是一样的,以下是基本命令:
cd /path/to/php/source 进入PHP源码目录
cd ext/curl 进入cURL模块的源码目录
/usr/local/php/bin/phpize 生成编译配置文件
./configure --with-php-config=/usr/local/php/bin/php-config
制作
进行安装
编译完成生成curl.so,修改php.ini,加载模块:
extension="/path/to/extension/curl.so"
测试是否加载了cURL扩展,新建一个PHP文件:
网页抓取示例:
curl_setopt()可以设置很多选项,更多选项请参考PHP手册。
更多函数及其用法请参考PHP手册(再次强调PHP手册真的是圣经)。
转载于: