社区
网络通信/分布式开发
帖子详情
在delphi 使用webbrowser如何取得网页的文字内容?
jachael_lj
2014-11-18 09:13:56
在delphi 使用webbrowser如何取得网页的文字内容??
感谢回复:
...全文
3018
6
打赏
收藏
在delphi 使用webbrowser如何取得网页的文字内容?
在delphi 使用webbrowser如何取得网页的文字内容?? 感谢回复:
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mingle lu
2014-12-15
打赏
举报
回复
奇怪,不是webbrowser.OleObject.document.body.innerText吗?
lsj60915kgy
2014-11-30
打赏
举报
回复
在网上搜到了如下内容:能否把这个翻译成delphi,头大!!! /////////////////////////////////////////////////////////////// IHTMLDocument2* GetDocFromFrame(IHTMLDocument2* pDoc2) { CComPtr<IHTMLDocument3> pDoc3; CComPtr<IHTMLDocument2> pDoc2Frame; hr = pDoc2->QueryInterface(IID_IHTMLDocument3,(void**)&pDoc3) ; if(hr==S_OK) { CComBSTR bstrName("FRAME");//CComBSTR bstrName("IFRAME"); CComPtr<IHTMLElementCollection> pElemCollFrame; hr=pDoc3->getElementsByTagName(bstrName,&pElemCollFrame); if (hr!=S_OK) return NULL; long pLength; hr=pElemCollFrame->get_length(&pLength); if(hr!=S_OK) return NULL; for(int i=0;i<pLength;i++) { IDispatch *pDispFrame=NULL; CComVariant vIndex=i; hr=pElemCollFrame->item(vIndex,vIndex,&pDispFrame); if(hr!=S_OK) continue; CComPtr<IHTMLElement> pElemFrame; hr=pDispFrame->QueryInterface(IID_IHTMLElement,(void**)&pElemFrame); if(hr!=S_OK) continue; CComPtr<IHTMLFrameBase2> pFrameBase2; hr=pElemFrame->QueryInterface(IID_IHTMLFrameBase2,(void**)&pFrameBase2); if(hr!=S_OK) continue; CComPtr<IHTMLWindow2> pWindow2; hr=pFrameBase2->get_contentWindow(&pWindow2); if(hr==S_OK) { hr=pWindow2->get_document(&pDoc2Frame); if (hr==S_OK) { return pDoc2Frame; } } } pDispFrame->Release(); } return NULL; }
lsj60915kgy
2014-11-30
打赏
举报
回复
自己顶一下。难道在IE下面还有一个Frame,再下面才是Document ?
levonsoft
2014-11-19
打赏
举报
回复
why not use idhttp.get?
不得闲
2014-11-19
打赏
举报
回复
获得IHTMLDocument2接口,然后就能获得了
lsj60915kgy
2014-11-19
打赏
举报
回复
借问: //用delphi与网页交互时出现的问题,ie.document没有值。 //实现的功能是,自动点打印审批网页里的同意按钮。 var Wnd: HWND; WndChild:HWND; doc:IHtmlDocument2; IE: iwebbrowser2; All: IHtmlElementCollection; HtmlElement: IHtmlElement; len,i:integer; item:OleVariant; begin Wnd := FindWindow('IEFrame', '打印审批 - Windows Internet Explorer'); WndChild := FindWindowEx(Wnd, 0,'Frame Tab', nil); WndChild := FindWindowEx(WndChild, 0,'TabWindowClass', nil ); WndChild := FindWindowEX(WndChild, 0, 'Shell DocObject View', nil); WndChild := FindWindowEX(WndChild, 0, 'Internet Explorer_Server', nil);//找到'Internet Explorer_Server'类的句柄 if WndChild <> 0 then begin GetIEFromHWnd(WndChild, IE); if(IE <>nil) then begin doc:=IE.Document as IHtmlDocument2;//这里就出错了,doc得到的值是0,ie是有值的,不知何故。 //注:网页是完成打印审批功能的,是动态生成的网页,地址栏里有asp?,打开网页源代码一看,里面全部都是代码。而换了其它非动态的网页调试时是可以运行的。 all:=doc.links ; len:=all.length; //.......... ----------------------------------------------
Web
Browser
实现编辑
网页
本文介绍了一个
使用
Delphi
实现的简单应用程序,该程序可以加载指定URL的
网页
内容
,并提供界面选项来切换
网页
的可编辑状态及读取当前
网页
的文本
内容
。通过OleObject与
Web
Browser
组件交互,实现了
网页
导航、编辑状态更改和获取
网页
内
文字
等功能。
【
delphi
】读取
web
browser
的文本
文章介绍了
使用
Delphi
编写的函数WB_ReadHTML和WB_WriteHTML,分别用于从
Web
Browser
对象中读取HTML代码并可能进行字符编码转换,以实现
网页
内容
的管理和处理。
delphi
跟
Web
Browser
中JS 交互思路
博主近期接触
Delphi
,发现其与
Web
Browser
中JS交互不易。存在调用JS得不到返回值、
Web
Browser
主动调用
Delphi
无从下手等问题。尝试多种方法,如利用
网页
标题、改变URL获取参数等均不理想,最终通过监听
Web
Browser
的onBeforeNavigate2事件获得post数据解决问题。
Delphi
Web
Browser
控件
本文详细介绍了
Delphi
中的
Web
Browser
控件,包括控件的属性如Application、Parent、Document等,事件如BeforeNavigate2、DocumentComplete等,以及函数如GoBack、Navigate等。还讨论了控件的显示与隐藏,以及如何进行初始化和终止化操作。
delphi
中将
web
browser
用作
网页
编辑器(转)
本文详细介绍了如何利用
Delphi
中的VCL
Web
Browser
控件实现
网页
编辑功能,包括响应键盘事件、修改选中文本样式及保存
网页
。通过在FormCreate事件中注册消息处理器,实现对
Web
Browser
控件的键盘事件监听,并
使用
execCommand方法改变文本颜色和加粗,最后保存修改后的
网页
。
网络通信/分布式开发
1,594
社区成员
32,945
社区内容
发帖
与我相关
我的任务
网络通信/分布式开发
Delphi 网络通信/分布式开发
复制链接
扫一扫
分享
社区描述
Delphi 网络通信/分布式开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章