wangchao.org
添加收藏 | 博客
 
购物视频论坛IT业界自然风光美女图片王朝网络小游戏BT下载生活百科编程设计手机图铃小说
 
笑话 | 水库 | 娱乐 | 体育 | 英语 | 宠物 | 美食 | 旅游 | 养生 | 手机 | 数码 | 汽车 | 珠宝 | 美容 | 装修 | 厨房 | 科普 | 动物 | 植物 | 影音 | 百科 | 知道 | 词典
  
 
 您好! 您现在位于: 王朝网络 → 编程设计 → 《utf-8转换gb2312编码,解决统计google搜索来源关键字乱返回上一页 
 
1楼 

utf-8转换gb2312编码,解决统计google搜索来源关键字乱

  网上购物、在线购物、购物搜索 欢迎光临本站购买图书、影视、音乐、数码、百货,手机等商品。

  解决了GOOGLE乱码的问题,原因是GOOGLE是以utf-8编码提交查询的关键词,通过判断来源是GOOGLE后,用以下函数进行处理即可:
  function UTF2GB(UTFStr)
   for Dig=1 to len(UTFStr)
   if mid(UTFStr,Dig,1)="%" then
   if len(UTFStr) >= Dig+8 then
   GBStr=GBStr & ConvChinese(mid(UTFStr,Dig,9))
   Dig=Dig+8
   else
   GBStr=GBStr & mid(UTFStr,Dig,1)
   end if
   else
   GBStr=GBStr & mid(UTFStr,Dig,1)
   end if
   next
   UTF2GB=GBStr
  end function
  function ConvChinese(x)
   A=split(mid(x,2),"%")
   i=0
   j=0
  
   for i=0 to ubound(A)
   A(i)=c16to2(A(i))
   next
  
   for i=0 to ubound(A)-1
   DigS=instr(A(i),"0")
   Unicode=""
   for j=1 to DigS-1
   if j=1 then
   A(i)=right(A(i),len(A(i))-DigS)
   Unicode=Unicode & A(i)
   else
   i=i+1
   A(i)=right(A(i),len(A(i))-2)
   Unicode=Unicode & A(i)
   end if
   next
  
   if len(c2to16(Unicode))=4 then
   ConvChinese=ConvChinese & chrw(int("&H" & c2to16(Unicode)))
   else
   ConvChinese=ConvChinese & chr(int("&H" & c2to16(Unicode)))
   end if
   next
  end function
  function c2to16(x)
   i=1
   for i=1 to len(x) step 4
   c2to16=c2to16 & hex(c2to10(mid(x,i,4)))
   next
  end function
  
  function c2to10(x)
   c2to10=0
   if x="0" then exit function
   i=0
   for i= 0 to len(x) -1
   if mid(x,len(x)-i,1)="1" then c2to10=c2to10+2^(i)
   next
  end function
  function c16to2(x)
   i=0
   for i=1 to len(trim(x))
   tempstr= c10to2(cint(int("&h" & mid(x,i,1))))
   do while len(tempstr)<4
   tempstr="0" & tempstr
   loop
   c16to2=c16to2 & tempstr
   next
  end function
  function c10to2(x)
   mysign=sgn(x)
   x=abs(x)
   DigS=1
   do
   if x<2^DigS then
   exit do
   else
   DigS=DigS+1
   end if
   loop
   tempnum=x
  
   i=0
   for i=DigS to 1 step-1
   if tempnum>=2^(i-1) then
   tempnum=tempnum-2^(i-1)
   c10to2=c10to2 & "1"
   else
   c10to2=c10to2 & "0"
   end if
   next
   if mysign=-1 then c10to2="-" & c10to2
  end function

解决了GOOGLE乱码的问题,原因是GOOGLE是以utf-8编码提交查询的关键词,通过判断来源是GOOGLE后,用以下函数进行处理即可: function UTF2GB(UTFStr) for Dig=1 to len(UTFStr) if mid(UTFStr,Dig,1)="%" then if len(UTFStr) >= Dig+8 then GBStr=GBStr & ConvChinese(mid(UTFStr,Dig,9)) Dig=Dig+8 else GBStr=GBStr & mid(UTFStr,Dig,1) end if else GBStr=GBStr & mid(UTFStr,Dig,1) end if next UTF2GB=GBStr end function function ConvChinese(x) A=split(mid(x,2),"%") i=0 j=0 for i=0 to ubound(A) A(i)=c16to2(A(i)) next for i=0 to ubound(A)-1 DigS=instr(A(i),"0") Unicode="" for j=1 to DigS-1 if j=1 then A(i)=right(A(i),len(A(i))-DigS) Unicode=Unicode & A(i) else i=i+1 A(i)=right(A(i),len(A(i))-2) Unicode=Unicode & A(i) end if next if len(c2to16(Unicode))=4 then ConvChinese=ConvChinese & chrw(int("&H" & c2to16(Unicode))) else ConvChinese=ConvChinese & chr(int("&H" & c2to16(Unicode))) end if next end function function c2to16(x) i=1 for i=1 to len(x) step 4 c2to16=c2to16 & hex(c2to10(mid(x,i,4))) next end function function c2to10(x) c2to10=0 if x="0" then exit function i=0 for i= 0 to len(x) -1 if mid(x,len(x)-i,1)="1" then c2to10=c2to10+2^(i) next end function function c16to2(x) i=0 for i=1 to len(trim(x)) tempstr= c10to2(cint(int("&h" & mid(x,i,1)))) do while len(tempstr)<4 tempstr="0" & tempstr loop c16to2=c16to2 & tempstr next end function function c10to2(x) mysign=sgn(x) x=abs(x) DigS=1 do if x<2^DigS then exit do else DigS=DigS+1 end if loop tempnum=x i=0 for i=DigS to 1 step-1 if tempnum>=2^(i-1) then tempnum=tempnum-2^(i-1) c10to2=c10to2 & "1" else c10to2=c10to2 & "0" end if next if mysign=-1 then c10to2="-" & c10to2 end function

 
标签: gb2312  google  utf  关键  字乱  搜索  来源  统计  编码  解决  转换  
 
您可以将本页贴到其他网站
UBB代码HTML代码
 
 
 
 
 
 
 更多内容
 ·GoogleAdSense违规行为集锦 ·GoogleAdsense新手指南及常见问题 ·GoogleAdsense优化目标之提高点击 ·GoogleAdsense作弊不是技术的较量
 ·张弛有度的Google Adsense ·月入千美金不是梦--AdSense高收入 ·优化建议与技巧来自AdSense优化团 ·用Google AdSense渠道跟踪你的广
 ·写给所有Google AdSense发布者-入 ·提高Google AdSense广告单价的投 ·安安心心publisher, 堂堂正正Ads ·被K的网站如何改进重新申请通过
 ·创建Google关键词广告的12高招 ·付款流程中的电话确认 ·关于Google Sitemap的几点认识 ·教你最大限度地提高 Google AdSe
 ·如何防止google adsense fraud c ·如何正规的快速建立赚钱的网站 ·google开始可以抓取框架内容 ·如何优化广告提高点击率
 ·用色彩提高你的点击率 ·开始使用Google Adsense ·用Google 搜索框黏住易变的访问者 ·如何在互联网社区中应用AdSense
 
 
最新评论  点此查看所有评论
 
 
 
 
发表评论(支持UBB码)


验证码:  
 
 
 
© 2005- 王朝网络 版权所有