首页 > 解决方案 > 在 laravel 中使用 goutte 刮掉 airbnb 价格

问题描述

晕伙计们。现在我正在学习在 laravel 中使用 goutte 进行抓取。我正在使用这个https://github.com/FriendsOfPHP/Goutte版本。现在我正试图从 airbnb 网站上刮下来,特别是为了这个价格。直到现在我才成功获得酒店名称,但我无法获得价格

例如,我想从这里的网站https://www.airbnb.com/rooms/1064946获取酒店名称和价格

这是我的控制器

$client = new Client();

$crawler = $client->request('GET', 'https://www.airbnb.com/rooms/1064946');

$result = $crawler->filter('#summary')->each(function ($node, $i){
          return [
                  'hotel_name' => $node->filter('._12ei9u44')->text(),
                  'price' => $node->filter('._doc79r')->text()
                 ];
          });

但我仍然无法弄清楚如何获得价格。有人可以帮助我吗?我对此很好奇。

或者还有其他功能可以抓取从 javascript 加载的 css?我听说 PHP PhantomJs 可以做到。不是吗?

标签: phplaravelgoutte

解决方案


推荐阅读