[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 523066680 于 2018-12-4 12:50 编辑

买个固态硬盘,读写如丝般顺滑(当然其他硬件也要跟上)

TOP

回复  lxh623


    在我的笔记本上测试 #14 脚本,提取 12000 个文本,3分26秒完成,不算太慢。
大批 ...
WHY 发表于 2018-12-4 11:41

谢谢回复。那天用了15号,有点慢。另一个老兄的也慢。
14号还没有下载完。

TOP

那是网站问题,我在浏览器点“最末页”,半天没反应

TOP

本帖最后由 lxh623 于 2018-12-6 14:25 编辑

回复 23# WHY
还是麻烦您做一个根据文本中的链接地址下载的脚本。下载到一个文件夹就可以。
今天中午,我改成从26500开始,居然一个没有下载到。要是每一次都从前面第一页开始,也不现实,做了好多天了。
剩下还是14万。谢谢!!

TOP

那是网站问题,我在浏览器点“最末页”,半天没反应
523066680 发表于 2018-12-6 11:51

前面说的是转化提取。下载还可以吧。打开最后一页,我这里也是一两分钟,毕竟3万多。

TOP

本帖最后由 523066680 于 2018-12-6 21:27 编辑

回复 35# lxh623

    所以现在主要讨论的是 http://www.52shici.com/ 下载后的数据提取、整合问题?
我以为是另一个网站 http://www.zgshige.com/

52shici 这个网站的文章页面,有手机版的,手机版页面体积小一半以上,可以减少处理消耗。不过如果已经下完了就没必要重下了。

TOP

回复 34# lxh623


    我觉得没必要再写一个,无非就是怕下载漏了,只要你把下载的页面数字记住就行了。
比如这一次下载 200~300 页,for ($i = 200; $i -le 300; $i+=$Step)
下一次你改成 for ($i = 301; $i -le 400; $i+=$Step) 就会接着下载 301~400 页。

www.zgshige.com 这个网站很怪,前面几百页还好,越往后越慢,点开都难,当然越下载就越慢。

TOP

回复  lxh623


    我觉得没必要再写一个,无非就是怕下载漏了,只要你把下载的页面数字记住就行了。
...
WHY 发表于 2018-12-6 20:36

我设置26500到最后,一个中午没有下载到一个。2016缺10万,2015缺4万。

TOP

下载不全的话直接用 #23 的脚本吧,我这里测试 26500~26600 下载时确实很慢,但是不缺页。
不明白你是啥情况。

TOP

下载不全的话直接用 #23 的脚本吧,我这里测试 26500~26600 下载时确实很慢,但是不缺页。
不明白你是啥情 ...
WHY 发表于 2018-12-7 10:25

用的就是这个,一个下载不到。

TOP

回复 40# lxh623

    那个网站靠后的页面我用浏览器也打不开~

TOP

总算下载完了,今天学习了一个代码。分享一下。
  1. M:\新建文件夹\aria2c.exe -c -s 7 -j 7 -i 1.txt
复制代码

TOP

本帖最后由 lxh623 于 2018-12-10 09:23 编辑
回复  lxh623


    假设从  下载的 html 存放在 E:\zgshige 目录下。
分两个脚本,zgshige.bat 和 zg ...
WHY 发表于 2018-11-23 14:39

麻烦一下,这个最好依序每一个文件夹提取为一个文本,名称用文件夹名。可能更快,也方便检查是否缺少。20元。谢谢!

TOP

本帖最后由 WHY 于 2018-12-13 16:30 编辑

回复 43# lxh623


zgshige.bat
  1. @echo off
  2. echo %time%
  3. set "htmlPath=E:\zgshige"
  4. dir /b /s "%htmlPath%\*.html" > List.txt
  5. PowerShell -exec ByPass -f "zgshige.PS1" List.txt
  6. del List.txt
  7. echo %time%
  8. pause
复制代码
zgshige.ps1
  1. param([String]$ListFile);
  2. $MyPath = $MyInvocation.MyCommand.Path -replace '[^\\]+$';
  3. forEach ($file In (type $ListFile -ReadCount 0)) {
  4.     $str = [IO.File]::ReadAllText($file, [Text.Encoding]::UTF8);
  5.     $arr = $str -split '<div class="(?:text-center b-b b-2x b-lt|col-xs-12 hidden-sm[^"]*)">';
  6.     If ($arr.Count -eq 3) {
  7.         $s = $arr[1] -replace '<h3>(?!TTT)', '$&TTT';         #标题前面加 TTT
  8.         $s = $s -replace '(?<!\r)\n', "`r`n";
  9.         $s = $s -replace '<div class="(signature|m-lg font14|note)">|</?br>|<br/>|</p>', '<br />';
  10.         $s = $s -replace '<!--(?:(?!-->)[\s\S])*-->|&nbsp;';  #删除注释标签和转义空格
  11.         $s = $s -replace '<(?!br|/?h3)[^>]*>';                #保留换行标签和h3标签
  12.         $s = $s -replace '(<br />)+', '$1';
  13.         $s = $s -replace '(?m)^\s+';                          #删除行首空格
  14.         $name = ($file -split '\\')[-2] + '.Log';
  15.         [IO.File]::AppendAllText($MyPath + $name, $s + "`r`n", [Text.Encoding]::UTF8);
  16.     }
  17. }
复制代码

TOP

回复  lxh623


zgshige.batzgshige.ps1
WHY 发表于 2018-12-10 14:18


屏幕闪得很快。调用两个参数来readalltext时,发生异常,未能找到路径。PS1,字符5 。

TOP

返回列表