我正在使用FriendsOf
PHP / Goutte包抓取网站.一切都很好.当用户将URL粘贴到输入中时,我正在抓取用于打开图形标签(如图像,标题等)的网站.
当用户从移动设备复制URL时,会出现问题,该URL现在是移动URL,如https://m.datpiff.com/tape/818948,并且在该URL上没有开放图标签.
当我访问相同的URL并用www替换子域m时,例如从桌面https://www.datpiff.com/tape/818948,它将我重定向到:http://www.datpiff.com/Chance-The-Rapper-Jeremih-Merry-Christmas-Lil-Mama-mixtape.818948.html.
此桌面URL确实包含开放图标签.
有没有办法让我的服务器强制或欺骗接收服务器将所有URL重定向到桌面版本,以便我可以使用开放图形标签?接收服务器已经重定向到正确的URL,但前提是我直接从桌面上的浏览器输入.
这是我正在使用的代码 – 它很棒.我只需要能够将我正在抓取的URL重定向到桌面版本.
首先,我在我的js中用www替换m,如下所示:
fullurl.replace('m.',"www");
将https://m.datpiff.com/tape/818948转换为https://www.datpiff.com/tape/818948
$url_to_scrape = $urltoscrape; $client = new Client(); // Go to the example.com website $crawler = $client->request('GET',$url_to_scrape); $opengraphImage =$crawler->filterXpath('//Meta[@property="og:image"]')->attr('content'); $title = $crawler->filter('title')->text();