ostapovich / google-reviews
用于获取Google评论的库
Requires
- php: ^8.0
- guzzlehttp/guzzle: ^7.4
- nesbot/carbon: ^3.0
- symfony/dom-crawler: ^7.1
Requires (Dev)
- phpunit/phpunit: ^11.2
README
此库使用PHP获取特定地点的Google评论。
安装
通过Composer安装
composer require ostapovich/google-reviews
用法
对于此包,您需要2个URL。您可以按照以下说明获取它们,这比Google Business容易得多
以下是一个基本示例
<?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
。
- 从HTML内容中提取
-
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内容中提取头像图片。