找回密码
 加入
搜索
楼主: 5209520

[求购] 10QB求购电脑配置单计算脚本

 火... [复制链接]
发表于 2011-11-14 09:27:35 | 显示全部楼层
需要源程序学习的请看这里:http://www.autoitx.com/forum.php?mod=viewthread&tid=28702
 楼主| 发表于 2011-11-16 09:28:07 | 显示全部楼层

RE: 10QB求购电脑配置单计算脚本

mdxaux  已经解决
 楼主| 发表于 2011-11-16 09:37:21 | 显示全部楼层
晕死  提示这个: 您的主题售价扣除积分交易税后为 0,请返回修改
发表于 2011-11-16 13:47:13 | 显示全部楼层
写了几个函数可以实现
;查询主流价格
Func SearchItemPrice($word)
Local $aryv[2]
Local $gryup=AnsiURLEncode($word)
$res=InetGet("http://s.etao.com/search?q="&$gryup&"&sort=sale-desc",@TempDir&"\112233.txt",1+2+4+8+16)
InetClose($res)
Local $filenr=FileRead(@TempDir&"\112233.txt")
Local $seller=QUZJDX($filenr,'<div class="seller-name">','</div>')
Local $price=StringReplace(QUZJDX($filenr,'<li class="price">','</em>'),"<em>","")
$price223=StringRegExp($price,"(\d+\.\d{2})",3)
If UBound($price223)>0 Then $price=$price223[0]
If StringInStr($seller,'charset="gbk"')>0 Then
$aryv[0]="互联网"
Else
$aryv[0]=$seller
EndIf
If Not StringRegExp($price,"\d+\.\d{2}") Then
$aryv[0]="没有找到"
$aryv[1]="没有找到"
Else
$aryv[1]="¥"&$price
EndIf
If StringInStr($filenr,"抱歉, 没有找到")>0 Then
$aryv[0]="没有找到"
$aryv[1]="没有找到"
        EndIf
Return $aryv
EndFunc

;截取项目中间的字符串
Func QUZJDX($stringc,$sstring,$estring,$cs=1)
Local $start=StringInStr($stringc,$sstring,1,$cs)+StringLen($sstring)
Local $end=StringInStr($stringc,$estring,0,1,$start)
If $end-$start<=0 Then Return ""
Return StringStripWS(StringMid($stringc,$start,$end-$start),3)
EndFunc

;转换UTF编码
Func AnsiURLEncode($str, $falg = 0)
        ;可选参数$falg = 0,不转换字母及数字(默认);$falg = 1,全部转换(字符头http://除外)
        Local $str_s = StringRegExpReplace($str, '^(http://).+', '$1')
        If @extended = 0 Then $str_s = ''
        If @extended > 0 Then $str = StringRegExpReplace($str, '^http://', '')
        Local $astr, $i, $s2d, $sS = StringSplit($str, '')
        For $i = 1 To UBound($sS) - 1
                If StringRegExp($sS[$i], '[^\x00-\xff]') Then
                        $s2d = StringToBinary($sS[$i] & ' ')
                        $astr &= '%' & StringMid($s2d, 3, 2) & '%' & StringMid($s2d, 5, 2)
                ElseIf StringRegExp($sS[$i], '[^\w]') Then
                        $s2d = StringToBinary($sS[$i])
                        $astr &= '%' & StringMid($s2d, 3, 2)
                Else
                        If $falg = 0 Then $astr &= $sS[$i]
                        If $falg <> 0 Then
                                $s2d = StringToBinary($sS[$i])
                                $astr &= '%' & StringMid($s2d, 3, 2)
                        EndIf
                EndIf
        Next
        $astr = StringReplace($astr, '%20', '+') ;转换空格的编码为'+'号,也可不要此行
        Return $str_s & $astr
EndFunc
发表于 2011-11-16 15:26:12 | 显示全部楼层
好东东 支持楼主一下
发表于 2011-11-19 06:30:25 | 显示全部楼层
不是吧?既然能用C#做出界面了,竟然连基本的算术流程都不能搞定?
发表于 2011-11-21 17:03:12 | 显示全部楼层
好東西,感謝樓主分享!
发表于 2011-11-25 02:37:00 | 显示全部楼层
谢谢 下载看看一下~~
发表于 2014-11-30 11:50:04 | 显示全部楼层
回复 25# mdxaux


    可以用吗,下载试下 谢谢分享
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-4-27 05:26 , Processed in 0.074058 second(s), 13 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表