问题描述
各位高手:我使用HttpWebRequest类来抓取http://kr.mouser.com网页的数据,我选择的是韩语的页面,可是抓下来的数据是中文的,哪位高手给个解决方案。万分感激!附上代码HttpWebRequestwebRequest=(HttpWebRequest)WebRequest.Create("http://kr.mouser.com");webRequest.Method="GET";webRequest.Headers.Set("Pragma","no-cache");webRequest.UserAgent="Mozilla-Firefox-Spider(Wenanry)/MISE8.0";HttpWebResponsewebResponse=(HttpWebResponse)webRequest.GetResponse();Streamstream=webResponse.GetResponseStream();StreamReaderreader=newStreamReader(stream,System.Text.Encoding.GetEncoding("utf-8"));stringresulthtml=reader.ReadToEnd();stream.Close();reader.Close();
解决方案
解决方案二:
很正常,可能对方后台判断了你抓去的ip,301重定向到了中文站
解决方案三:
有没有解决方法?
解决方案四:
这个网站会在浏览器上保留cookie记录你选择的国家。如果没这个cookie就会根据IP....重定向到IP所在国家。
解决方案五:
请求的时候加上cookiepreferences=ps=kr&pl=en-US&pc_il=USDu&pc_tr=EUR&pc_kr=KRW;
解决方案六:
楼上已给出解决方案
解决方案七:
4楼朋友,怎么加能否给演示,新手不是很精通。
解决方案八:
https://msdn.microsoft.com/zh-cn/library/system.net.httpwebrequest.cookiecontainer.aspx
解决方案九:
谢谢各位的解答,我在webResponse.Cookies的cook.Domain="www.mouser.cn",请问各位我怎样将这个改变成"kr.mouser.com",这样也许就可以取到"kr.mouser.com"的内容了。
解决方案十:
苦恼啊!到现在还是取不到。
解决方案十一:
刚刚调试断点发现在HttpWebResponsewebResponse=(HttpWebResponse)webRequest.GetResponse() 这一步执行后连接的主机发现变成了"www.mouser.cn"了。
解决方案十二:
抓取网页的时候带上cookie,pl=ko-KR就会得到你要的结果。记得结账哦·~
解决方案十三:
11楼朋友能不能给个代码演示,新手不知道如何下手,可以另外给你送分。
解决方案十四:
webRequest.Headers.Set("Accept-Language","ko-KR");