抓取 在线翻译(Google、Yahoo)
2008-04-11 17:02
253 查看
最近公司要求我们做一个调用Google、Yahoo全文翻译的工具,在园子搜索了一下,找到了一篇(不大记得了,好像是VB写的),看了他的做法以后,做了一点点改进,发出来给需要的朋友看看,有什么不对的地方请大家扶正!
using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.IO;
using System.Threading;
namespace Transn
struct LanguageType
private void LoadLanguage(ComboBox comboBox)
void GoogleT(TsMachine tm, string content, string languetype)
void YahooT(TsMachine tm, string content, string languetype)
public string Godict_T(string texts, string languages)
{
string payload = "from_content=" + texts + "&langpair=" + languages + "";
WebRequest req = HttpWebRequest.Create(@"http://trans.godict.com/index.php");
req.Credentials = CredentialCache.DefaultNetworkCredentials;
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
req.Timeout = 50000;
req.ContentLength = payload.Length;
Encoding encoding = Encoding.GetEncoding("UTF-8");
Byte[] bytes = encoding.GetBytes(payload);
req.ContentLength = bytes.Length;
Stream newStream = null;
newStream = req.GetRequestStream();
newStream.Write(bytes, 0, bytes.Length);
newStream.Close();
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
if (res.StatusDescription.ToLower() != "ok")
{
Console.WriteLine("无法连接!");
}
Stream dataStream = res.GetResponseStream();
StreamReader reader = new StreamReader(dataStream, Encoding.GetEncoding(res.CharacterSet));
string responseFromServer = null;
responseFromServer = reader.ReadToEnd();
reader.Close();
dataStream.Close();
res.Close();
string content = responseFromServer;
string s = "<textarea name=q rows=12 style=\"width: 740px;\" wrap=PHYSICAL dir=ltr>";
int start = content.IndexOf(s);
int end = content.IndexOf("</textarea>", start);
return content.Substring(start + s.Length, end - start - s.Length);
}
结果发现这个谷词的res.CharacterSet(相应流)永远是iso-8859-1 ,这就郁闷了。 不知道这个地方如何解码,有知道的朋友请指教 !
using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.IO;
using System.Threading;
namespace Transn
struct LanguageType
private void LoadLanguage(ComboBox comboBox)
void GoogleT(TsMachine tm, string content, string languetype)
void YahooT(TsMachine tm, string content, string languetype)
public string Godict_T(string texts, string languages)
{
string payload = "from_content=" + texts + "&langpair=" + languages + "";
WebRequest req = HttpWebRequest.Create(@"http://trans.godict.com/index.php");
req.Credentials = CredentialCache.DefaultNetworkCredentials;
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
req.Timeout = 50000;
req.ContentLength = payload.Length;
Encoding encoding = Encoding.GetEncoding("UTF-8");
Byte[] bytes = encoding.GetBytes(payload);
req.ContentLength = bytes.Length;
Stream newStream = null;
newStream = req.GetRequestStream();
newStream.Write(bytes, 0, bytes.Length);
newStream.Close();
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
if (res.StatusDescription.ToLower() != "ok")
{
Console.WriteLine("无法连接!");
}
Stream dataStream = res.GetResponseStream();
StreamReader reader = new StreamReader(dataStream, Encoding.GetEncoding(res.CharacterSet));
string responseFromServer = null;
responseFromServer = reader.ReadToEnd();
reader.Close();
dataStream.Close();
res.Close();
string content = responseFromServer;
string s = "<textarea name=q rows=12 style=\"width: 740px;\" wrap=PHYSICAL dir=ltr>";
int start = content.IndexOf(s);
int end = content.IndexOf("</textarea>", start);
return content.Substring(start + s.Length, end - start - s.Length);
}
结果发现这个谷词的res.CharacterSet(相应流)永远是iso-8859-1 ,这就郁闷了。 不知道这个地方如何解码,有知道的朋友请指教 !
相关文章推荐
- baidu google yahoo抓取我的新站
- 远程抓取GOOGLE的自动翻译结果
- 三大搜索(Google、Yahoo、Live)继续被涮?!
- Google Baidu 和 Yahoo 搜索PK
- Google,Yahoo,Bing集体删除地球村索引,百度仍然保留
- 利用Python中的matplotlib模块抓取yahoo finance里的历史数据并绘图
- Yahoo 搜索份额借火狐交易大涨,Google 下滑
- Google、Yahoo!、MSN、Ask和百度网站地图简单快捷的提交方式 潇湘
- Google和Yahoo专家联手揭秘世界顶尖公司的技术内幕
- 转:向Google、Yahoo!、MSN、Ask以及百度提交网站地图(Sitemap)
- C#winform抓取百度,Google搜索关键词结果
- 2014年抓取Google查询结果的方法
- Google 蜘蛛网页抓取性能预测
- OpenID 得到Microsoft、Google、Yahoo! 、IBM、VeriSign 支持, 前景看好
- 在ASP.NET网页中加入MSN字典,Yahoo字典,Google搜寻,Yahoo知识+
- 微软反对Yahoo和Google结为搜索广告联盟
- Adobe与Google及Yahoo结盟 强化Flash内容搜索
- 网站创建站点地图(sitemap) google yahoo 百度
- MapGuide Fusion Viewer API 实战-- 程序切换Google Map/Yahoo Map/Bing Map 地图
- python抓取google搜索结果