2016-07-16 62 views
1

我工作的一個Chrome擴展,我基本上希望能填充<div>標籤,在彈出的一些相關鏈接,通過採取一些搜索結果的鏈接設置從Google.com使用jQuery.load(search_url)將它們注入到<div>中。JQuery的.load()不與谷歌搜索合作結果

我想第一個問題是詢問Google是否設置了他們的頁面,以便您不能從中提取內容(合法性問題?)。否則,我從包含其中一個搜索結果超鏈接的「r」類中拉出。下面的代碼:

$(document).ready(function(){$('#links').load("https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&es_th=1&ie=UTF-8#q=keyWords .r");}); 

(關鍵詞最終將與相關的關鍵字替代搜索)。

+0

谷歌根本就沒有打算讓你做,無論在技術上和法律上。使用他們的自定義搜索api – charlietfl

+0

好的,謝謝你提醒我。 – A13X

回答

0

我曾在一個項目中開發過我的Chrome擴展的鏈接。我用這個簡單的功能,它的工作沒有問題:

window.open(*string variable here*); 

然而,對於Chrome擴展具體地說,儘量chrome.tabs.create({url: "..."});

+0

這實際上最終成爲我的目的的一個好主意。現在它會根據當前頁面的標題/其他相關標籤來搜索關鍵字。謝謝。 – A13X

+1

使用擴展代碼中的'windows.open()'可能會出現問題(例如速率限制)。更類似於擴展的方法是'chrome.tabs.create({url:「...」})',它不需要「」標籤「'權限。 – Xan

1

這篇文章基本上概括了爲什麼它不工作:Is it ok to scrape data from Google results?

正確的,他們不希望人們查驗他們的網頁這樣的,從他們的服務器拉所有的數據。谷歌確實有一個我可以使用的API,但我想我可能完全擺脫這個功能,人們完全有能力搜索相關資料[當然谷歌當然:)]。