Share Lấy nội dung từ website khác trong PHP với thư viện Goutte

filiallion

Administrator
Staff member
Administrator
Messages
293
Points
10
Language
Tiếng Việt
Ở bài viết "Lấy dữ liệu từ website khác bằng thư viện PHP Simple HTML DOM Parser" tôi đã hướng dẫn các bạn sử dụng thư viện PHP Simple HTML DOM Parser để lấy nội dung từ website khác một cách tự động, các bạn cũng có thể tham khảo thêm bài viết "Sử dụng cURL để tải tập tin từ website khác" là một ví dụ về việc lấy nội dung là tập tin từ website khác bằng cách sử dụng thư viện cURL. Ở bài viết này, tôi sẽ tiếp tục giới thiệu với các bạn một thư viện khác dễ sử dụng hơn nhưng lại rất mạnh đó là thư viện Goutte.

Có lẽ tại thời điểm hiện tại, thư viện Goutte là sự lựa chọn tốt nhất cho các bạn muốn tương tác với website khác để lấy nội dung hay đăng tin tự động chẳng hạn. Thư viện Goutte được xây dựng trên nền tảng Symfony framework nên rất mạnh, có thể sử dụng trong tất cả các dự án từ nhỏ cho đến các dự án thật sự lớn.

Các bạn sử dụng công cụ Composer để cài đặt thư viện Goutte với dòng lệnh như sau:
Code:
composer require fabpot/goutte
Và sau đây là một ví dụ đơn giản sử dụng thư viện Goutte:
PHP:
<?php
//Require tập tin autoload.php
require 'path/to/autoload.php';

//Khai báo sử dụng thư viện
use Goutte\Client;

//Khởi tạo đối tượng client
$client = new Client();

//Tạo một yêu cầu tới một trang
$crawler = $client->request('GET', 'http://www.domain.com');

//Lấy và in nội dung lấy được từ trang
$crawler->filter('h2 > a')->each(function($node) {
    print_r($node->text());
});
Trên đây chỉ là một ví dụ rất đơn giản để sử dụng thư viện Goutte, các bạn có thể tham khảo thêm về thư viện Goutte tại địa chỉ https://goutte.readthedocs.io/en/latest.
 
Top