我是靠谱客的博主 慈祥帽子,最近开发中收集的这篇文章主要介绍易语言用正则采集百度知道的代码,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

常量数据表

.版本 2
.常量 标题, "<文本长度: 25>", , "ti"((rn|s*).*>.*)</a>
.常量 标题需替换的内容, "<文本长度: 17>", , target="_blank">
.常量 提问时间, "<文本长度: 36>", , "mr-8">(d{4,}-d{1,}-d{1,})</span>
.常量 帖子链接与回答数量, "<文本长度: 93>", , <a href="(http:.*)" rel="external nofollow" target="_blank" class="f-light nod" data-   log="pos:ans,si:d{1,}">(.*)</a>
.常量 回答内容, "<文本长度: 40>", , <i class="i-answer-text">答:</i>.*</dd>
.常量 回答内容需替换的, "<文本长度: 25>", , <i class="i-answer-text">
.常量 回答者, "<文本长度: 27>", , 回答者:<a href=.*>(.*)</a>

百度知道采集器

此功能需要加载精易模块5.6

.版本 2
.支持库 iext
.程序集 窗口程序集1
.程序集变量 搜索的内容, 文本型
.程序集变量 网页源码, 文本型
.程序集变量 页码变量, 整数型
.程序集变量 网址, 文本型
.子程序 _按钮_搜索_被单击
.局部变量 i, 整数型
.局部变量 i2, 整数型
.局部变量 i3, 整数型
.如果 (编辑框_搜索内容.内容 ≠ “”)
  超级列表框1.全部删除 ()
  .判断循环首 (页码变量 < 21)
    搜索内容 ()
    正则 ()
    页码变量 = 页码变量 + 10
  .判断循环尾 ()
  .计次循环首 (超级列表框1.取表项数 (), i2)
    超级列表框1.置标题 (i2 - 1, 0, 到文本 (i2))
  .计次循环尾 ()
  页码变量 = 0
.否则
  信息框 (“请先输入要搜索的问题”, #信息图标, “提示”)
  编辑框_搜索内容.获取焦点 ()
.如果结束
.子程序 搜索内容
按钮_搜索.标题 = “正在搜索中...”
搜索的内容 = 编辑框_搜索内容.内容
网址 = “http://zhidao.baidu.com/search?word=” + 编码_URL编码 (搜索的内容) + “&ie=gbk&site=-1&sites=0&date=0&pn=” + 到文本 (页码变量)
网页源码 = 网页_取网页源码 (网址)
.子程序 正则
.局部变量 正则标题与序号, 正则表达式类
.局部变量 局_计次, 整数型
.局部变量 表项索引, 整数型
.局部变量 正则链接与回答数, 正则表达式类
.局部变量 正则回答, 正则表达式类
.局部变量 正则回答时间, 正则表达式类
.局部变量 正则回答者, 正则表达式类
正则标题与序号.创建 (#标题, 网页源码)
正则链接与回答数.创建 (#帖子链接与回答数量, 网页源码)
正则回答.创建 (#回答内容, 网页源码)
正则回答时间.创建 (#提问时间, 网页源码)
正则回答者.创建 (#回答者, 网页源码)
.计次循环首 (正则标题与序号.取匹配数量 (), 局_计次)
  表项索引 = 超级列表框1.插入表项 (, , , , , )
  超级列表框1.置标题 (表项索引, 1, 文本_替换 (正则标题与序号.取子匹配文本 (局_计次, 1), , , , “>”, “”, “<em>”, “”, “</em>”, “</a>”, “<em”, “”, “</em”, “”)) ' 标题
  .如果 (寻找文本 (正则链接与回答数.取子匹配文本 (局_计次, 1), “html”, , 假) = -1)
    超级列表框1.置标题 (表项索引, 4, “”)
  .否则
    超级列表框1.置标题 (表项索引, 4, 正则链接与回答数.取子匹配文本 (局_计次, 1)) ' 链接
  .如果结束
  超级列表框1.置标题 (表项索引, 2, 文本_替换 (正则回答.取匹配文本 (局_计次, ), , , , #回答内容需替换的, “”, “</i>”, “”, “<em>”, “”, “</em>”, “”, “</dd>”, “”)) ' 回答
  超级列表框1.置标题 (表项索引, 3, 正则链接与回答数.取子匹配文本 (局_计次, 2)) ' 回答的数量
  超级列表框1.置标题 (表项索引, 5, 正则回答时间.取子匹配文本 (局_计次, 1)) ' 回答的时间
.计次循环尾 ()
按钮_搜索.标题 = “搜索答案”
.子程序 _超级列表框1_被双击, 逻辑型
.参数 横向位置, 整数型
.参数 纵向位置, 整数型
.参数 功能键状态, 整数型
_预览此内容_被选择 ()
.子程序 _预览此内容_被选择
.如果真 (信息框 (_启动窗口.超级列表框1.取标题 (_启动窗口.超级列表框1.现行选中项, 2) + #换行符 + “-------------------------------” + #换行符 + “是否浏览更多回答?”, #是否钮 + #询问图标, 超级列表框1.取标题 (超级列表框1.现行选中项, 1)) = #是钮)
  _打开此链接_被选择 ()
.如果真结束
.子程序 _超级列表框1_鼠标右键被按下, 逻辑型
.参数 横向位置, 整数型
.参数 纵向位置, 整数型
.参数 功能键状态, 整数型
.如果真 (超级列表框1.取表项数 () ≠ 0)
  弹出菜单 (菜单, , )
.如果真结束
.子程序 _打开此链接_被选择
网页_打开指定网址 (超级列表框1.取标题 (超级列表框1.现行选中项, 4))
.子程序 _复制回答_被选择
.如果真 (置剪辑板文本 (超级列表框1.取标题 (超级列表框1.现行选中项, 2)) = 真)
  信息框 (“成功复制!”, #信息图标, “复制成功”)
.如果真结束
.子程序 __启动窗口_创建完毕
页码变量 = 0
编辑框_搜索内容.获取焦点 ()
.子程序 _复制此链接_被选择
.如果真 (置剪辑板文本 (超级列表框1.取标题 (超级列表框1.现行选中项, 4)) = 真)
  信息框 (“成功复制!”, #信息图标, “复制成功”)
.如果真结束
.子程序 _编辑框_搜索内容_内容被改变
.如果真 (编辑框_搜索内容.内容 = “”)
  页码变量 = 0
.如果真结束
.子程序 _编辑框_搜索内容_按下某键, 逻辑型
.参数 键代码, 整数型
.参数 功能键状态, 整数型
.如果真 (键代码 = #回车键)
  _按钮_搜索_被单击 ()
.如果真结束
.子程序 _获取更多回答_被选择
网页_打开指定网址 (“http://zhidao.baidu.com/search?word=” + 编码_URL编码 (搜索的内容) + “&ie=gbk&site=-1&sites=0&date=0&pn=0”)
.子程序 _按钮_关闭_被单击
结束 ()
.子程序 _按钮_获取更多回答_被单击
_获取更多回答_被选择 ()

运行结果:

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对靠谱客的支持。如果你想了解更多相关内容请查看下面相关链接

最后

以上就是慈祥帽子为你收集整理的易语言用正则采集百度知道的代码的全部内容,希望文章能够帮你解决易语言用正则采集百度知道的代码所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(87)

评论列表共有 0 条评论

立即
投稿
返回
顶部