吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3108|回复: 11
收起左侧

[已解决] 易语言获取网页内容问题

[复制链接]
zmy 发表于 2019-12-24 18:22
本帖最后由 zmy 于 2019-12-24 22:59 编辑

先上图
图1:
1.jpg
图2:
2.jpg

上面两个图片是网页中截图,现在想要获取小写后面的价格,但是发现网页源码不一样,找不到共同点。
图片1对应代码:
[PHP] 纯文本查看 复制代码
<tr><td><p style="text-align: center;"><strong>中标价格 </strong></p></td><td colspan="5"><p><strong>小写:¥2577532.10元</strong></p><p><strong>大写:贰佰伍拾柒万柒仟伍佰叁拾贰元壹角整</strong></p></td></tr>

图片2对应代码:
[Asm] 纯文本查看 复制代码
<tr style="height: 47px;"><td width="93" style="background: white; border-width: 0px 1px 1px; border-style: none solid solid; border-color: rgb(0, 0, 0) windowtext windowtext; padding: 2px; border-image: none;" colspan="2"><p style="text-align: center;"><span style="font-family: 宋体;">中标价格</span></p></td><td width="592" style="background: white; border-width: 0px 1px 1px 0px; border-style: none solid solid none; border-color: rgb(0, 0, 0) windowtext windowtext rgb(0, 0, 0); padding: 2px;" colspan="11"><p><span style="font-family: 宋体;">小写:¥</span><span style="font-family: Calibri;">2387311.05</span><span style="font-family: 宋体;">元</span></p><p><span style="font-family: 宋体;">大写:贰佰叁拾捌万柒仟叁佰壹拾壹元伍分</span></p></td>


请高手指点应该怎样才能成功获取小写金额。

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

b0y 发表于 2019-12-24 18:34
手机看不到代码。如果没有共同特征 分别取2次不就行了
yuehuna 发表于 2019-12-24 18:55
yty 发表于 2019-12-24 19:06
hill_king 发表于 2019-12-24 19:12
那就做两次判断
kiki 发表于 2019-12-24 19:17
不用谢  使用  精益模块7 正则语句  小写.*?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0).*?元


[Asm] 纯文本查看 复制代码
.版本 2

.子程序 _按钮1_被单击

正则 (#常量1)

.子程序 _按钮2_被单击

正则 (#常量2)

.子程序 正则, 整数型, , 本子程序采用【精易编程助手】生成。成功返回匹配的数量,失败返回0。
.参数 源文本, 文本型, , 欲被匹配的文本
.局部变量 局_正则, 正则表达式类, , , 此类为精易模块里面的正则类,精易模块下载地址:http://ec.125.la/
.局部变量 局_匹配数, 整数型
.局部变量 局_计次, 整数型

.如果真 (局_正则.创建 (“小写.*?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0).*?元”, 源文本, 假, 假, 真, 真) = 假)
    信息框 (“正则创建失败,请检查正则表达式语句是否有误!”, #错误图标, , )
    返回 (0)
.如果真结束
局_匹配数 = 局_正则.取匹配数量 ()
.如果真 (局_匹配数 = 0)
    信息框 (“匹配失败,请检检查正则语句是否有误,数量:0”, #错误图标, , )
    返回 (0)
.如果真结束
.计次循环首 (局_匹配数, 局_计次)
    输出调试文本 (“匹配文本 ” + 到文本 (局_计次) + “ 中的子匹配文本 1:” + 局_正则.取子匹配文本 (局_计次, 1))
.计次循环尾 ()
返回 (局_匹配数)
CC 发表于 2019-12-24 20:10
本帖最后由 CC 于 2019-12-24 20:11 编辑

源码不一样,去掉HTML标签的纯文本就一样了,这个可以将源码改为纯文本

[Asm] 纯文本查看 复制代码
.版本 2

.子程序 xml_取纯文本, 文本型
.参数 xml源码, 文本型
.局部变量 正则, 正则表达式类
.局部变量 xml, 文本型

xml = xml源码
正则.创建 (“<script[\s\S]*?</script>|<style[\s\S]*?</style>|<[^>]+>|&.{1,8};”, xml)
xml = 正则.替换 ()
返回 (xml)
 楼主| zmy 发表于 2019-12-24 20:36
CC 发表于 2019-12-24 20:10
源码不一样,去掉HTML标签的纯文本就一样了,这个可以将源码改为纯文本

[mw_shl_code=asm,true].版本 2
...

谢谢大神
 楼主| zmy 发表于 2019-12-24 20:38
b0y 发表于 2019-12-24 18:34
手机看不到代码。如果没有共同特征 分别取2次不就行了

谢谢。主要是每打开一个网页他的代码就可能是一种情况,我这里只是随便找了两个不同的。
 楼主| zmy 发表于 2019-12-24 20:39
kiki 发表于 2019-12-24 19:17
不用谢  使用  精益模块7 正则语句  小写.*?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0).*?元

谢谢,没用过模块,我试试
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 22:27

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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