小编给大家分享一下易语言如何使用正则采集百度知道,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
常量数据表
.版本 2 .常量 标题, "<文本长度: 25>", , "ti"((\r\n|\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”) .子程序 _按钮_关闭_被单击 结束 () .子程序 _按钮_获取更多回答_被单击 _获取更多回答_被选择 ()
运行结果:
以上是“易语言如何使用正则采集百度知道”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。