吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 6149|回复: 16
收起左侧

[其他原创] 编程小练习(9)

 关闭 [复制链接]
zapline 发表于 2010-3-14 12:42
假设想做一个百度踩空间工具
那么我们可能需要获取一份空间地址的列表
我这里提供一种方法:
每次访问http://hi.baidu.com/st/moreonline.html
可以随机得到100名在线用户的信息
进过分析,发现这些信息又保存在一个XML文件中
地址为http://hi.baidu.com/sys/file/moreonline.xml
我们需要做的是,从这个XML文件中得到一份空间地址列表
实现方法可以是解析XML,也可以把XML文件当作普通文本文件然后自己用匹配算法来得到地址

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

零芽 发表于 2010-3-14 13:50
学习学习!
obaby 发表于 2010-3-14 19:02
现在题目是更多的趋向于实战了啊?原来的算法题都不见了。:)eee
 楼主| zapline 发表于 2010-3-15 12:16
现在题目是更多的趋向于实战了啊?原来的算法题都不见了。
obaby 发表于 2010-3-14 19:02



    这道题目除去下载和解析XML文件,可以当作是关于字符串的算法题
dzeo 发表于 2010-3-15 13:43
vb 6.0

截图1268631570.jpg
 
Private Sub Command1_Click()
On Error Resume Next
Dim str As String
str = Inet1.OpenURL("http://hi.baidu.com/sys/file/moreonline.xml")
m1 = "<id><![CDATA[" '截取关键字
m2 = "]]></id>"      '截取关键字
Do
n1 = InStr(str, m1)
n2 = InStr(str, m2)
If n1 = 0 Then Exit Do
yhid = Mid(str, n1 + Len(m1), n2 - n1 - Len(m1))
List1.AddItem yhid
str = Right(str, Len(str) - n2)
Loop
End Sub
745327354 发表于 2010-3-15 20:54
额,看不懂
女孩不可信 发表于 2010-3-15 21:43
.版本 2

.程序集 RegExp_, , 公开
.程序集变量 RegExp, 对象
.程序集变量 MatchCollection, 对象

.子程序 _初始化, , , 当基于本类的对象被创建后,此方法会被自动调用



.子程序 _销毁, , , 当基于本类的对象被销毁前,此方法会被自动调用

RegExp.清除 ()

.子程序 创建_, 逻辑型, 公开
.参数 正则, 文本型

RegExp.清除 ()
RegExp.创建 (“VBScript.RegExp”, )
RegExp.写属性 (“IgnoreCase”, 真)
RegExp.写属性 (“Global”, 真)
RegExp.写属性 (“Pattern”, 正则)
返回 (真)

.子程序 搜索_, 整数型, 公开
.参数 文本, 文本型

MatchCollection = RegExp.对象型方法 (“Execute”, 文本)
返回 (MatchCollection.读数值属性 (“Count”, ))

.子程序 取子匹配文本_, 文本型, 公开
.参数 匹配索引, 整数型
.参数 子索引, 整数型, , 。
.局部变量 Match, 对象
.局部变量 SubMatches, 对象
.局部变量 Ret, 变体型

Match = MatchCollection.读对象型属性 (“Item”, 匹配索引 - 1)
SubMatches = Match.读对象型属性 (“SubMatches”, )
Ret = SubMatches.读属性 (“Item”, 子索引 - 1)
返回 (Ret.取文本 ())


.版本 2

.程序集 程序集1

.子程序 _启动子程序, 整数型, , 本子程序在程序启动后最先执行
.局部变量 RegExp, RegExp_
.局部变量 i, 整数型
.局部变量 数据, 字节集

.如果真 (RegExp.创建_ (“<id>.+A\[(\S+)]]>”))
    数据 = 读网页内容_ (“http://hi.baidu.com/sys/file/moreonline.xml”)
    .计次循环首 (RegExp.搜索_ (到文本 (数据)), i)
        标准输出 (, RegExp.取子匹配文本_ (i, 1) + #换行符)
    .计次循环尾 ()
    标准输出 (, “共计用户数量:” + 到文本 (i - 1))
.如果真结束
标准输入 ()
返回 (0)  ' 可以根据您的需要返回任意数值

.子程序 读网页内容_, 字节集
.参数 网站地址, 文本型
.局部变量 XML对象, 对象

.如果真 (XML对象.创建 (“MSXML2.XMLHTTP”, ) = 假)
    .如果真 (XML对象.创建 (“Microsoft.XMLHTTP”, ) = 假)
        返回 ({  })
    .如果真结束

.如果真结束
XML对象.方法 (“open”, “GET”, 网站地址, 假)
XML对象.方法 (“send”, )
返回 (XML对象.读属性 (“responseBody”, ).取字节集 ())

2.jpg
blueapplez 发表于 2010-3-15 22:57
没时间优化了,给出源码   想玩的自己捣鼓吧, 花了好几个小时呢
未命名.JPG

RandVisit源码.rar

13.16 KB, 下载次数: 5, 下载积分: 吾爱币 -1 CB

RandVisit工具.rar

4.84 KB, 下载次数: 2, 下载积分: 吾爱币 -1 CB

免费评分

参与人数 1威望 +1 收起 理由
zapline + 1 欢迎讨论交流,[吾爱破解]有你更精彩!

查看全部评分

 楼主| zapline 发表于 2010-3-15 23:27
没时间优化了,给出源码   想玩的自己捣鼓吧, 花了好几个小时呢
blueapplez 发表于 2010-3-15 22:57



    呵呵 空间名和空间地址一般不同
例如我的空间http://hi.baidu.com/zapline/  空间名是 老肉鸡的世界
你这个里面构造的地址是 http://hi.baidu.com/老肉鸡的世界
无奈a 发表于 2010-3-15 23:52
学习学习。。。。。。。。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

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

GMT+8, 2024-4-16 12:17

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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