网络客户端和语言 [英] Webclient and Language

查看:33
本文介绍了网络客户端和语言的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想用德语抓取谷歌建议:

I want to scrape google suggest in german language:

string url = "http://google.de/complete/search?output=toolbar&q=" + txtResults.Lines[i].Replace(" ", "%20%");
WebClient client = new WebClient();
client.Headers.Add("User-Agent", "Mozilla/5.0 (Windows NT 6.2; WOW64; rv:17.0) Gecko/17.0 Firefox/17.0");
client.Headers.Add("Accept-Encoding:", "gzip, deflate");
client.Headers.Add("Connection:", "keep-alive");
doc.Load(client.OpenRead(url), System.Text.Encoding.UTF8, true);

但我总是得到国际结果,而在浏览器中我通过给定的 .de url 得到德国结果.所以我添加了标题:

But i always get international results whereas in the browser i get the german results by the given .de url. So i added the header:

client.Headers.Add("Accept-Language:", "de-de,de;q=0.8,en-us;q=0.5,en;q=0.3");

但现在我得到了错误:指定的值包含无效的 HTTP 标头字符

我还尝试通过

Thread.CurrentThread.CurrentCulture = new CultureInfo("de-DE");

但这也无济于事.

推荐答案

尝试从标题名称中删除冒号 (:):

Try removing the colon (:) from your header name:

client.Headers.Add("Accept-Language", "de-de,de;q=0.8,en-us;q=0.5,en;q=0.3");

这篇关于网络客户端和语言的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆