数据抓取问题之URL特殊字符(如ѐ)
来源:互联网 发布:淘宝客服工作总结100字 编辑:程序博客网 时间:2024/06/15 07:15
在信息化时代飞速发展的时候,大数据,搜索等也全面发展,网络爬虫已是遍地都是,但是数据抓取也会在处理上需要注意的。
下面描述以下问题:
当抓取的URL里出现特殊的字符,如非ASCII的法文:ѐ ,你会发现程序界面会出现错误:
可是 当你在你的浏览器里 直接输入这个URL时 确实可以访问的!!!
是什么情况呢? 怎么解决呢?
答案是 程序解码时 把 ѐ 解错了……当然找不到界面了。
1、首先想到的是 把 ѐ 直接转码替换,可是当你用 统一编码 UTF-8时 注意了,这只能对单独的这一个字符的解决办法。
比如 你先编码 ѐ 为 %D1%90 然后替换 当然可以成功的……
URL url = new URL(url.replace("ѐ","%D1%90"));
2、其实还有另一种解决办法的:
就是无论有没有特殊字符 我们都 进行 统一编码 。但是也有一个问题的,那就是不能把 “/” "//" 也进行编码。
那就只对后面的子URL进行编码.
String Surl = "/xxxx/caffѐ"; //把 URL 分开处理 保护好"//"Surl = URLEncoder.encode(Surl.replace("/"," "), "utf-8"); //保护 "/" Surl = Surl.replace("+","/");Url url = new URL("http://www.aaa.com"+Surl); //拼成完整的URLBufferedReader br = new BufferedReader(new InputStreamReader(Murl.openStream())); //接下来自己的操作if(br.readLine()!=null){ …………}这样我觉得 我的URL 里的问题 就解决了。
有问题欢迎讨论……
0 0
- 数据抓取问题之URL特殊字符(如ѐ)
- 编码问题之URL中特殊字符(ѐ等)
- java处理url中的特殊字符(如&,%...)
- java处理url中的特殊字符(如&,%...)
- url中的特殊字符问题
- url中的特殊字符问题
- url中的特殊字符问题
- url中的特殊字符问题
- url特殊字符转义问题
- url中的特殊字符问题
- 关于url中特殊字符的问题(url不安全字符和保留字符)
- url传参特殊字符问题(%#等)
- 用URL传参带特殊字符的问题!
- java url 传递特殊字符转译问题
- URL特殊字符问题1例
- url中特殊字符编码的问题
- url传参,特殊字符截断问题
- url传参特殊字符问题
- windows环境下使用gcc
- UIWebView调用JS出现的内存泄漏
- 左式堆的deletdMin例程
- UVa 489 侩子手游戏
- ======android api 中文地址======
- 数据抓取问题之URL特殊字符(如ѐ)
- NVIDIA Jetson TK1学习与开发(八):图文详解OpenGL在Jetson TK1上的安装和使用
- hdu-4818-RP problem(高斯消元)
- appium 元素定位与交互中文文档
- sql连接
- Android 属性动画(Property Animation) 完全解析
- ecshop foreach 循环内动态改变标签样式
- USACO:2.1.3 Sorting a Three-Valued Sequence 三值的排序
- HDOJ 最少拦截系统 1257