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

[文本处理] [已解决]批处理如何实现下载三七中文网某个指定小说的最新章节?

本帖最后由 pcl_test 于 2016-11-30 18:51 编辑

我是新手,前几天刚接触wget和HtoX32c,于是想写一个自动下载小说最新章节的批处理
思路是用wget下载某个网页的源码,从中找出最新章节的地址,再用wget下载,最后HtoX32c转换

比如说看《大主宰》,可以用wget下载这个网页的源码http://www.37zw.com/0/330/,这个网址是不变的,保存为1.html
1.html中的一行:<meta property="og:novel:latest_chapter_url" content="http://www.37zw.com/0/330/4329753.html"/>,其中的http.....43297553.html就是最新章节的地址
其他方面都成功了,但是不知道怎么获取这个最新章节的地址,1.html中不止这一个链接地址
或者有更好的方法也请教教我
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

本帖最后由 Blitz 于 2016-11-29 22:28 编辑

回复 2# pcl_test


    谢谢,但是还是不太懂。。。能详细点吗

TOP

本帖最后由 Blitz 于 2016-11-29 22:30 编辑

回复 3# CommandBatCmd
  1. @echo off
  2. set /p as=请输入网址:
  3. cd C:\Users\Administrator\Desktop
  4. wget -O 1.txt %as%
  5. HtoX32c /IP 1.txt>2.txt
  6. del 1.txt
  7. setlocal Enabledelayedexpansion  //从这里往下是从网上找的,作用是取章节的标题作为文件名
  8. call :G_getrowstr 18 2.txt kk
  9. ren 2.txt "%kk%.txt"
  10. exit
  11. :G_getrowstr
  12. set %3=
  13. set /A G_skiprows=%1-1
  14. if "%G_skiprows%"=="0" goto :G_getrowstrz
  15. for /f "skip=%G_skiprows% delims=" %%i in ('findstr /n .* %2') do (  
  16. for /f "tokens=2* delims=:" %%j in ("%%i") do set %3=%%j
  17. ::if "%%i"=="%1:" set %3=空白行
  18. goto :eof
  19. )
  20. :G_getrowstrz
  21. for /f "delims=" %%i in ('findstr /n .* %2') do (
  22. for /f "tokens=2* delims=:" %%j in ("%%i") do set %3=%%j
  23. goto :eof
  24. )
复制代码
这就是要输入最新章节的地址才行

TOP

回复 6# happy886rr


    试了,成功了,非常感谢!!!

TOP

回复 8# happy886rr


    其实主要的代码就是这几句
  1. cd C:\Users\Administrator\Desktop
  2. wget -O 1.txt %as%
  3. HtoX32c /IP 1.txt>2.txt
  4. del 1.txt
复制代码
后面的是从网上找的,获取文件的第18行重命名文件
请问该怎么改

TOP

回复 10# happy886rr


    哦哦,谢谢

TOP

本帖最后由 Blitz 于 2016-12-1 00:59 编辑

回复 12# pcl_test

谢谢,代码很简短,而且效果也很好,但是弹出的消息框好像不能下滑,看不了下面的内容

TOP

回复 14# pcl_test


    哦哦

TOP

返回列表