本帖最后由 2463308417 于 2021-8-28 14:50 编辑
【2021.08.28】 星期五 继续打卡
大家好,我又来了!
昨天和前天分别学习了JSON和正则的应用,今天学了单线程和多线程的区别。制作了项目:小说采集器。
我是跟随代号1126学习的,看过视频的都知道里面只讲解了单线程的小说采集器,在我学了多线程之后,我将其改成了多线程的方式。
源码如下:
窗口程序集名 | 保 留 | 保 留 | 备 注 | 窗口程序集_窗口1 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | i | 整数型 | | | 线程数 | 整数型 | | | 总线程数 | 整数型 | | | 完成的任务数 | 整数型 | | | 循环判断首 ()如果真 (在运行的线程数 < 到整数 (编辑框1.内容 )) 在运行的线程数 = 在运行的线程数 + 1 启动线程 (&多线程采集小说, , )完成的任务数 = 完成的任务数 + 1 如果真 (完成的任务数 ≥ 到整数 (超级列表框1. 取表项数 ()) )信息框 (“执行完成”, 0, , )跳出循环 ()处理事件 ()循环判断尾 (1 = 1 )变量名 | 类 型 | 静态 | 数组 | 备 注 | 小说正则 | 正则表达式类 | | | 返回文本 | 文本型 | | | i | 整数型 | | | 索引 | 整数型 | | | 延迟 (3000 )索引 = 索引 - 1 返回文本 = 文本_取文本右边_L (到文本 (网页_访问_对象 (“http://www.qishu.me/”, , , , , , , , , , , , , , , , )), “headcontainer1”, )小说正则. 创建 ( #网页小说, 返回文本, , , , )计次循环首 (小说正则. 取匹配数量 (), i )索引 = 超级列表框1. 插入表项 (, , , , , )超级列表框1. 置标题 (索引, 0, 到文本 (索引 + 1 )) 超级列表框1. 置标题 (索引, 1, 小说正则. 取子匹配文本 (i, 2, )) 超级列表框1. 置标题 (索引, 2, “http://www.qishu.me/” + 小说正则. 取子匹配文本 (i, 1, )) 超级列表框1. 置标题 (索引, 3, “https://xiazai.xqishu.com/txt/” + 文本_取左边 (小说正则. 取子匹配文本 (i, 2, ), “TXT”, , ) + “.txt”)计次循环尾 ()在运行的线程数 = 在运行的线程数 - 1 弹出菜单 (菜单, , )判断 (超级列表框1. 取标题 (超级列表框1.现行选中项, 3 ) ≠ “”)写到文件 (取运行目录 () + “\小说目录\” + 超级列表框1. 取标题 (超级列表框1.现行选中项, 1 ) + “.txt”, 网页_访问_对象 (超级列表框1. 取标题 (超级列表框1.现行选中项, 3 ), , , , , , , , , , , , , , , , )) 信息框 (“下载完成!”, 0 + 64, “通知:”, )信息框 (“小说还没有采集!”, 0 + 64, “通知:”, )
不知道我改的多线程这种方式是否正确?希望有大神可以指点一下。
这里还要分享一个网页方面用处挺大的命令,这个命令是视频自带模块里的:
.版本 2
' 下载 章节小说时
' 遇到html的标签在正文中的时候使用命令 网页_取文本_dom ()
' 命令:网页_取文本_dom () --可以将内容中的 html 标签全部去掉
ps:说到这我想起以前学习web的时候,学过手写DOM库。当时的项目是做一个浏览器前航,用到了很多dom的命令。
github:
浏览器项目展示图:
如果想要我做的浏览器项目,回复一下:浏览器,我明天会在签到的时候分享出来。
|