ostapovich/google-reviews

用于获取Google评论的库

v1.2.1 2024-08-21 14:38 UTC

This package is auto-updated.

Last update: 2024-09-21 14:48:05 UTC


README

此库使用PHP获取特定地点的Google评论。

安装

通过Composer安装

composer require ostapovich/google-reviews

用法

对于此包,您需要2个URL。您可以按照以下说明获取它们,这比Google Business容易得多

Step 1

Step 2

Step 3

以下是一个基本示例

<?php

require 'vendor/autoload.php';

use Ostapovich\GoogleReview;

// Initialize the GoogleReview class
$googleReview = new GoogleReview();

// URL of the Google reviews page
$firstUrl = 'https://www.google.com/async/reviewDialog?ei=owqIZv3iLveJxc8PoPCzuAI&opi=89978449&yv=3&cs=1&async=feature_id:0x47e66e2964e34e2d%3A0x8ddca9ee380ef7e0,review_source:All%20reviews,sort_by:qualityScore,is_owner:false,filter_text:,associated_topic:,next_page_token:,async_id_prefix:,_pms:s,_fmt:pc'; // Your First URL here, i add paris
$secondUrl = 'https://www.google.com/async/reviewSort?vet=12ahUKEwj9mbuqlZCHAxWlRvEDHTCpD10Qxyx6BAgBEBU..i&ved=2ahUKEwj9mbuqlZCHAxWlRvEDHTCpD10Qjit6BQgBEKsE&bl=UndH&s=web&opi=89978449&yv=3&cs=1&async=feature_id:0x47e66e2964e34e2d%3A0x8ddca9ee380ef7e0,review_source:All%20reviews,sort_by:newestFirst,is_owner:false,filter_text:,associated_topic:,next_page_token:,_pms:s,_fmt:pc'; // Your Second URL here here, i add paris

try {
    // Fetch all reviews
    $reviews = $googleReview->getReviewsAll($secondUrl, 3); // if you need all reviews do not specify the second parameter

    // Output reviews
    foreach ($reviews as $review) {
        echo "Name: " . $review['name'] . "\n";
        echo "Rating: " . $review['rating'] . "\n";
        echo "Review: " . $review['text'] . "\n\n";
    }
} catch (Exception $e) {
    echo 'Error: ' . $e->getMessage();
}

// Get general location, rating, and count
$this->getRating($this->getCrawlerObj($firstUrl));
$this->getReviewsCount($this->getCrawlerObj($firstUrl));

方法

  • getReviewsAll(string $url,int $page = 0): array|\Exception

    • 从提供的URL获取所有评论。
  • getCrawlerObj(string $url): Crawler|\Exception

    • 为提供的URL创建Crawler对象。
  • getNextReviewsPage(string $nextPageUrl, int $page = 0): string|\Exception

    • 获取评论下一页的HTML内容。
  • getNextPageToken(Crawler $crawler): string|null|\Exception

    • 从HTML内容中提取data-next-page-token
  • getRating(Crawler $crawler)

    • 从HTML内容中提取总体评分。
  • getReviews(Crawler $crawler): array|\Exception

    • 从HTML内容中提取评论。
  • getReviewsIds(Crawler $crawler): array|\Exception

    • 从HTML内容中提取评论ID。
  • getReviewsCount(Crawler $crawler): int|null|\Exception

    • 从HTML内容中提取评论总数。
  • getReviewsTexts(Crawler $crawler): array|\Exception

    • 从HTML内容中提取评论文本。
  • getReviewsReply(Crawler $crawler): array|\Exception

    • 从HTML内容中提取评论回复。
  • getReviewsNames(Crawler $crawler): array|\Exception

    • 从HTML内容中提取评论者姓名。
  • getReviewsRatings(Crawler $crawler): array|\Exception

    • 从HTML内容中提取评论评分。
  • getProfilesImg(Crawler $crawler): array

    • 从HTML内容中提取头像图片。