2011-01-05 71 views
4

我要提交谷歌查詢像這樣:如何使用.net/c#讀取Google計算查詢結果?

...從C#控制檯應用程序,並捕獲由谷歌返回報告的結果(和忽略任何鏈接到其他網站)。有沒有特定的Google API可以幫助我完成此任務?

我從工具Launchy(launchy.net)得到了這個想法。插件GCalc這樣做,我也發現這個模塊的源文件:
http://launchy.svn.sourceforge.net/viewvc/launchy/tags/2.5/plugins/gcalc/gcalc.cpp?revision=614&view=markup

它看起來像GCalc根本不使用任何Google API。但我不知道如何在C#中做同樣的事情,我寧願使用適當的API。但如果沒有,我可以使用一些幫助/指針如何將GCalc功能複製到C#(.net庫/ classes ...?)

回答

2

使用API​​時,谷歌計算器的結果不顯示。所以,如果你想要他們,你必須刮掉頁面。請小心,因爲這違反了Google的服務條款,所以如果您發送太多頻繁的請求,您的IP將被禁止。

獲得結果頁面後,使用html解析器。結果是<b>標籤(例如<b>1 + 1 = 2</b>;如果不存在,則沒有計算器結果)。結果中要小心<sup>標籤(例如<b>(1 (m^2) kg)/2 = 0.5 m<sup>2</sup> kg</b>)。您可能還想要解碼html實體。

0

爲什麼不使用HTTPWebRequest,然後解析macrog在他的回答中陳述的結果。

+1

爲什麼發表一個答案說一些已發佈的內容?只需提供marcog提供的那個。 – 2011-01-05 13:12:00

+0

@cody macrog沒有談論HTTPWebRequest。可能,我不得不在他的回答中添加這個評論。 – mqpasta 2011-01-05 13:30:37

相關問題