忘记密码   免费注册 查看新帖 |

ChinaUnix.net

  平台 论坛 博客 文库 频道自动化运维 虚拟化 储存备份 C/C++ PHP MySQL 嵌入式 Linux系统
最近访问板块 发新帖
查看: 2398 | 回复: 2

请教perl 的 url编码 [复制链接]

论坛徽章:
0
发表于 2017-12-14 23:58 |显示全部楼层
本帖最后由 hn_weicr 于 2017-12-15 12:00 编辑

用LWP::UserAgent->get某网站的某资源。
url要求带有关键字
比如:http://ha.baidu.com/s?wd=我&from=zi //(类似例子)  
注:"我"  是关键字
从浏览器来操作的话,就是在表单内填入”我“字后按回车。此时看地址栏 ”http://ha.baidu.com/s?wd=我&from=zi  “
将之复制贴到记事本是: ”http://ha.baidu.com/s?wd=%E6%88%91&from=zi
其中”%E6%88%91“对应的就是”我“,也是”我“字的url编码。在淘宝也试了一下,搜”我“的商品,确认”我“就是”%E6%88%91“
试着测试下”我“,想如法炮制,获取任意字的URL编码:
use URI::URL;
use URI::Escape;
my  $gbk="我";
my $my_encode=URI::URL->new($gbk);
print $my_encode."\n";



结果却是  %CE%D2

测试环境: This is perl, v5.8.8 built for MSWin32-x86-multi-thread

没做过与编码有关的项目,求助一下各位,谢谢。


论坛徽章:
0
发表于 2017-12-15 11:58 |显示全部楼层
研究了一下,自已解决了。
use URI::URL;
use strict;
use Encode;
my  $gbk="我";
my $gbk1=encode('utf8',decode('gb2312',$gbk));
my $my_encode=URI::URL->new($gbk1);
print $my_encode."\n";

论坛徽章:
0
发表于 2018-02-05 10:25 |显示全部楼层
去年专门看了Perl & LWP,但不用就生疏了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号 北京市公安局海淀分局网监中心备案编号:11010802020122
广播电视节目制作经营许可证(京) 字第1234号 中国互联网协会会员  联系我们:wangnan@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP