Laravel.io
class GoogleShoppingController extends Controller {

    private $html;

    private function getHtml($url) {
        $request = new Client();
        try {
            $response = $request->get($url);
        } catch (RequestException $e) {
            echo $e->getRequest();
            if ($e->hasResponse()) {
                echo $e->getResponse();
            }
        }
        $this->html = $response->getBody();
        $this->loadHtmlDom();
    }

    private function loadHtmlDom() {
        phpQuery::newDocumentHTML($this->html);
    }

    private function getLinks($url, $selector) {
        $this->getHtml($url);
        foreach (phpQuery::pq($selector) as $link) {
            $links[] = phpQuery::pq($link)->attr("href");
        }
        return $links;
    }

    public function test() {
        $urls = $this->getLinks("https://www.google.com/search?q=mattress&hl=en&tbm=shop", ".r a");
        foreach ($urls as $url) {
            $parsed = parse_url($url);
            var_dump($parsed);
            foreach ($urls as $url) {
                $parsed = parse_url($url);

                if (isset($parsed['host']) && strpos($parsed['host'], 'google.com') !== FALSE) {
                    $queryString = parse_str($parsed['query']);
                    var_dump($queryString);
                    $x = parse_url($adurl);
                    var_dump($x);
                    if (isset($x['query'])) {
                        $y = parse_str($x['query']);
                        var_dump($y);
                        if (!R::find('sproduct', ' url = ?', array($ds_dest_url))) {
                            // sproduct is sponsored product (that's I'm why parsing adurl)
                            $sproduct = R::dispense('sproduct');
                            $sproduct->url = $ds_dest_url;
                            $sproduct->scraped = FALSE;
                            //R::store($sproduct);
                            //var_dump($sproduct);
                        }
                    }
                } else {
                    $parsed['host'] = 'www.google.com'; // google shopping product
                    unset($parsed['query']);
                    $link = "http://" . $parsed['host'] . $parsed['path'];

                    if (!R::find('gproduct', ' url = ?', array($link))) {
                        $gproduct = R::dispense('gproduct');
                        $gproduct->url = $link;
                        $gproduct->scraped = FALSE;
                        //R::store($gproduct);
                        //var_dump($gproduct);
                    }
                }
            }
        }
    }

Please note that all pasted data is publicly available.