Board logo

标题: [分享]命令行下网页转文本的超强工具 [打印本页]

作者: 无奈何     时间: 2006-11-27 11:48    标题: [分享]命令行下网页转文本的超强工具

命令行下网页转文本的超强工具
软件名:HtoX32c
这是 HtoX32 的命令行版本,具有很强的可定制功能,转换效果非常理想。我用过很多 html2txt 类的软件这是唯一一款转换效果让我满意的软件。这是小鬼子的作品,所以界面是日文的。我参照 HtoX32 汉化版及使用体会汉化了一下。不过不是现在汉化的,是很久以前弄的,刚刚让我从箱底翻出来。我不懂日文,又为了凑字节,所以汉化质量非常差。汗一下自己,这样的东西也敢贴出来。使用的时候一定注意加 /IP 参数不做编码转换,否则转换出来的东西谁也看不懂了。希望推荐的这个软件能给大家在整理网页资料时带来一点方便。
附件 1: HtoX32c.zip (2006-11-27 11:48, 63.34 K, 下载附件所需积分 1点 ,下载次数: 560)

作者: redtek     时间: 2006-11-27 12:24
感谢版主提供这么好的工具,下载收藏~:)
作者: lxmxn     时间: 2006-11-27 12:43

  恩,是不错啊,还有这么多参数可以用呢,感谢版主"尘封"的小工具,呵呵~

作者: vkill     时间: 2006-11-27 23:02
转换完是乱码怎么?还是喜欢 wget+sed ,觉得html标签有时候真有用
作者: 无奈何     时间: 2006-11-27 23:24
RE vkill
关于乱码顶楼帖子已经提及,一定要加 /IP 参数。
HtoX32c 与 sed、awk 等的处理各有侧重的,前者适合整篇文章转换,后者适合部分信息的提取。如果 HTML 标签被拆分到多行,用 sed 等处理会稍微麻烦一些。
作者: vkill     时间: 2006-11-27 23:32


  Quote:
Originally posted by 无奈何 at 2006-11-27 23:24:
RE vkill
关于乱码顶楼帖子已经提及,一定要加 /IP 参数。
HtoX32c 与 sed、awk 等的处理各有侧重的,前者适合整篇文章转换,后者适合部分信息的提取〠...

HTML 标签被拆分到多行这确实是问题,sed处理的时候真不好弄~呵呵~是各有侧重
作者: electronixtar     时间: 2006-11-28 09:06


  Quote:
如果 HTML 标签被拆分到多行,用 sed 等处理会稍微麻烦一些。

个人觉得还是用IE来作这种体力活的好,保证效果和用户在IE里看到的一样

htm2txt.vbs
    set oDOM = WScript.GetObject(WScript.Arguments(0))

    do until oDOM.readyState = "complete"
    WScript.sleep 200
    loop

    WScript.Echo oDOM.Body.InnerText
使用实例:
转换 .chm 里的网页到txt
cscript //NoLogo //e:vbscript htm2txt.vbs ms-its:C:\WINDOWS\Help\ntcmds.chm::/ntcmds.htm > "%UserProfile%\桌面\Nt命令行.txt"

转换URL到txt
cscript //NoLogo //e:vbscript htm2txt.vbs  http://www.Google.com  > "%UserProfile%\桌面\Google首页.txt"

转换html文件到txt
cscript //NoLogo //e:vbscript htm2txt.vbs  D:\test.htm > D:\test.txt
注意:此处的 D:\test.htm必须写 完整的全部路径

[ Last edited by electronixtar on 2006-11-28 at 11:38 PM ]
作者: lxmxn     时间: 2006-11-28 10:37

  不错,给兄弟加分咯~

作者: lotus516     时间: 2006-11-28 12:04
为什么我用electronixtar的脚本出了错!!cmd显示见附件!!!!
作者: lxmxn     时间: 2006-11-28 12:48


  Quote:
Originally posted by lotus516 at 2006-11-28 12:04:
为什么我用electronixtar的脚本出了错!!cmd显示见附件!!!!


  仔细检查你的文件名和路径,以及文件是否存在,路径是否有空格,你就知道答案了。

作者: electronixtar     时间: 2006-11-28 23:39


  Quote:
为什么我用electronixtar的脚本出了错!!cmd显示见附件!!!!


  仔细检查你的文件名和路径,以及文件是否存在,路径是否有空格,你就知道答案了。

忘记说了,不支持相对路径
作者: lotus516     时间: 2006-11-29 01:35


  Quote:
Originally posted by lxmxn at 2006-11-28 12:48:


  仔细检查你的文件名和路径,以及文件是否存在,路径是否有空格,你就知道答案了。

这就奇了,我的路径没有空格,是绝对路径,文件也存在,就是错!!!还是见附件!!!!我截了出错的屏和路径!!!
作者: 无奈何     时间: 2006-11-30 01:33
RE electronixtar
谢谢兄的 VBS 脚本,我也知道 VBS 的强大,只能寄希望于以后学习了。VBS 处理字符的速度怎么这么慢。
作者: electronixtar     时间: 2006-11-30 07:06


  Quote:
VBS 处理字符的速度怎么这么慢

不是vbs慢,是IE载入速度慢。那几句是调用的IE的内核 mshtml.dll 来解析的

[ Last edited by electronixtar on 2006-11-30 at 07:19 AM ]
作者: electronixtar     时间: 2006-11-30 07:15
re lotus516

  Quote:
这就奇了,我的路径没有空格,是绝对路径,文件也存在,就是错!!!还是见附件!!!!我截了出错的屏和路径!!!

可以试试 file://E:/电子书/1/0001.htm 这样的形式。看你的 htm 文件的图标,猜测你是改过 htm 文件关联的,可能会对代码的效果产生一定的影响。

[ Last edited by electronixtar on 2006-11-30 at 07:18 AM ]
附件 1: cmd.JPG (2006-11-30 07:16, 32.45 K, 下载附件所需积分 1点 ,下载次数: 12)



作者: HUNRYBECKY     时间: 2006-12-3 02:51
无奈何斑竹的东西不错,我在YAHOO看到了他的SENDTO+全是批处理编写的,不错哈。不知道使用什么加密的,能否告诉我?因为你的加密好象没有什么效果。
cls
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: SendTo+ -V0.1  --TextToClip.cmd
:: 无奈何@cn-dos.net - 2006-8-18 - mail:wunaihe@gmail.com
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
@echo off
setlocal
if not DEFINED SendTo+ call :parent "%~dp0..\"
type "%~f1" | "%Sendto+%\CMD\winclip.exe" -c
goto :EOF

:parent
::获取文件父目录
set "SendTo+=%~dp1"
set "SendTo+=%SendTo+:~0,-1%"
goto :EOF
作者: mqycn     时间: 2007-4-6 09:18    标题: 好咚咚

好咚咚啊
作者: flandy     时间: 2007-4-28 22:47
very good
作者: sunjiang0     时间: 2007-5-12 05:26
不知道有什么用啊
作者: honghunter     时间: 2007-5-12 09:39
这个绝对是好东东,解决了我之前遇到的大问题。

不过楼上的几位,这样翻帖子,真有点奇怪。
作者: ddjk     时间: 2007-7-12 23:13
感谢版主提供这么好的工具
作者: zyfcxp     时间: 2007-9-7 18:26
感谢版主提供这么好的工具
作者: cooray     时间: 2007-9-8 22:40
果然不错,真是太感谢了^_^
作者: 952268849     时间: 2009-1-27 23:30    标题: 不错

不错
作者: liu3157551     时间: 2010-1-5 12:53
搜索到的好东西。收藏了
作者: sexfio     时间: 2010-1-15 01:53
On Error Resume Next  
sTitle="html2txt"  

GetHtmlFileName: '输出:HtmlFileName,包含文件完整路径  
'从参数或对话框获得文件  
If WScript.Arguments.Count=0 Then  
  Set objDialog = CreateObject("UserAccounts.CommonDialog")  
  objDialog.Filter = "HTML源文件件|*.html;*.htm|所有文件|*.*"  
  objDialog.ShowOpen  
  HtmlFileName = objDialog.FileName  
  If len(HtmlFileName)=0 Then   
      wscript.Quit  
  End If  
Else  
    If Len(WScript.Arguments(0).Length)> 3 Then  
        HtmlFileName = WScript.Arguments(0)  
    End If  
End If  
'验证文件是否有效  
Set fso    =CreateObject("scripting.FileSystemObject")  
If fso.FileExists(HtmlFileName)=False Then   
    MsgBox "文件不存在!",vbOKOnly, sTitle  
    WScript.Quit  
End If  
If Not left(fso.GetFile(HtmlFileName).Type ,4) = "HTML" Then  
    MsgBox "请不要选择一个非HTML文件!",vbOKOnly, sTitle  
    WScript.Quit  
End If  

Set HtmlFile=fso.GetFile(HtmlFileName)  

ConvertHtmlToTxt:  
'获取文件扩展名  
i=ubound(split(HtmlFileName,"."))  
ext=split(HtmlFileName,".")(i)  
SaveName=Left (HtmlFileName,Len(HtmlFileName)-Len(ext)-1)  

Set oHtml=CreateObject ("internetexplorer.application")  
oHtml.Navigate HtmlFileName  
oHtml.Document.execCommand "saveas","true",SaveName & ".txt"  
oHtml.Quit  
WScript.Quit
作者: fresco     时间: 2010-1-30 21:35
正需要这个工具。谢谢分享
作者: szoyj     时间: 2010-1-31 16:40
好东西,谢谢啊~
作者: huangyushun     时间: 2010-2-1 20:52
我草 最近无聊死
作者: gshccr     时间: 2010-6-25 20:48
支持一下啦!
作者: csanycall     时间: 2010-7-12 10:03
赞一个先,感觉还是不错滴
作者: pdanniel66     时间: 2010-7-13 05:27
What is the difference from curl ? download and test it  thanks .
作者: moonatoffice     时间: 2010-10-13 18:09
下回来看看,好不好用
作者: 2261385     时间: 2010-10-13 21:09    标题: 挥长感谢

真的要谢谢你 我找了好久
作者: jxliuzj     时间: 2010-10-15 16:14
不错,下下来试试
作者: liuke474678380     时间: 2010-11-12 09:58    标题: 命令行下网页转文本的超强工具

非常不錯 !
作者: lb369     时间: 2010-11-22 15:26
楼主真是好人,发这么好的东西.
作者: anxin     时间: 2010-12-1 10:51
不错,下下来试试