laravel框架使用phpQuery库来实现网页抓取

来源:互联网 发布:小猪cms收银系统 打印 编辑:程序博客网 时间:2024/05/15 23:43

想做一个网页抓取的功能,底层使用PHP的laravel框架。

这里使用phpQuery库来实现网页抓取,这里不做介绍。

需要了解的可以百度,或者等我填坑。

下载最新版本可以前往https://code.google.com/p/phpquery/

不能科学上网的可以直接点击我上传的下载包- -|怎么上传。。。自己百度吧,目前最新的版本是phpQuery-0.9.5.386

-------------------------------------

先申明下我用的版本:

laravel5.1;

phpQuery-0.9.5.386;

-------------------------------

开始以为只要把库整个包扔进laravel工程就能用了,果然是图样图森破。

鉴于laravel框架封装的良好行,这里需要设置laravel的autoload->class map

-------

1、首先在app目录下创建一个新的文件夹,命名libs(可自定义)

2、(可选)考虑到后面可能会引用很多库,so,在libs下再创建一个phpQuery文件夹

3、找到根目录下的composer.json文件

4、找到composer.json中定义的(看我备注)

[php] view plain copy
print?
  1. ”autoload”: {  
  2.         ”classmap”: [  
  3.             ”database”,  
  4.             ”app/libs/phpQuery” //加我 加我 加我  
  5.         ],  
  6.         ”psr-4”: {  
  7.             ”App\\”: ”app/”  
  8.         }  
  9.     },  
"autoload": {        "classmap": [            "database",            "app/libs/phpQuery" //加我 加我 加我        ],        "psr-4": {            "App\\": "app/"        }    },
5、运行终端,cd到项目路径,执行
[php] view plain copy
print?
  1. composer dumpautoload  
composer dumpautoload
--------------------------

然后就能在项目中愉快的使用phpQuery了,简单的用法如下:

[php] view plain copy
print?
  1. use phpQuery;  
use phpQuery;

[php] view plain copy
print?
  1. phpQuery::newDocumentFile(‘http://www.baidu.com’);  
  2. companies</span><span>&nbsp;=&nbsp;pq(</span><span class="string">'body'</span><span>);&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="keyword">return</span><span>&nbsp;</span><span class="vars">companies;  
phpQuery::newDocumentFile('http://www.baidu.com');$companies = pq('body');return $companies;


注:如果要再加其他第三方库,重复2-5的步骤即可。


最后,分享这个家伙的博客给大家http://fideloper.com/laravel-4-application-setup-app-library-autoloading,如何使用自己创建的库:)


0 0
原创粉丝点击