作者:lucky2502882647 | 来源:互联网 | 2023-07-05 16:23
若html源码是:
aaaaaaaaaaaaaaaaaaaaaa
那我就只要获取其纯文本:aaaaaaaaaaaaaaaaaaaaaa,其他的都不要
这要如何呢???????????
23 个解决方案
1:用xml 来做Html页面 很容易就取到了
2:用innerHTML试试
3:用正则表达式?
我用的是VC编程工具,能不能给个例子。thx.
接口参数是html的源码,那这要如何了。
http://www.yesky.com/20001130/140045.shtml
这是用vb实现的,你可以参考一下
可以先创建一个隐藏的HtmlView,载入上述HTML,再取得其body 的 IHTMLElement interface,
调用get_outerText即可
楼上能否稍微详细介绍一下。这个办法应该比较简单好用。
>可以先创建一个隐藏的HtmlView,载入上述HTML,再取得其body 的 IHTMLElement >interface,
>调用get_outerText即可
直接创建HTMLDocument对象就可以了
去微软网站搜索walkall示例
用walkall就可以
然后查找IHTMLDivElement接口
我用WebBrowser2,可以打开url,还可以看到网页,但得到的body是NULL, 但hr返回值居然是S_OK. 我晕了。
walkall实例没有找到。
就是html文件转换为text的问题,这样的程序网上可以找到的,你自己用狗哥搜一下类似html2text的东西应该能找到。
没那么麻烦,读入文本文件,去掉 <> 和之间的东西就可以了,要控制格式的话麻烦一点。
<>以外,还有很多东西不属于正文,比如function.
>> <>以外,还有很多东西不属于正文,比如function.
没关系呀,对于一些特殊标记特殊处理一下就好了,比如 、 等。
多谢大家支持。
可能本贴分数不够用。希望能够开个新贴给热心的朋友相应的分。
Use XML,use MSDOM ,it is quite easy!
CComPtr pHtmlDoc2 = (IHTMLDocument2*)GetHtmlDocument();
if(pHtmlDoc2)
{
HRESULT hr = S_OK;
CComPtr pBodyElement;
hr=pHtmlDoc2->get_body( &pBodyElement);
if(pBodyElement!=NULL)
{
//BSTR pbBody = strConten.AllocSysString();
hr=pBodyElement->put_innerHTML(CComBSTR(strConten)); //类似的还有put_innerTEXT
return true;
}
}