php抓取开奖网页内容(我在网上找到使用rft控件保存webbrowse文本(图))
优采云 发布时间: 2021-12-08 17:23php抓取开奖网页内容(我在网上找到使用rft控件保存webbrowse文本(图))
我在网上发现用rft控件保存网页浏览文本txtHtml是RichTextBox
txtHTML.Text = WebBrowser1.document.body.innerText
'flag:将rsftext另存为txt文件,strtmp文件路径
txtHTML.saveFile strtmp, rtfText
将其名称属性设置为 web
私有子命令1_Click()
web.Navigate ""
结束子
私有子 web_DocumentComplete(ByVal pDisp As Object, URL As Variant)
设置 doc = web.Document
对于每个 i In doc.All
msgbox typename(i)
Text1.Text = Text1.text & vbclrf & i.innertext
下一步
结束子
================================================ ============================================
转载
'引用 Microsoft HTML 对象库
将 oDoc 变暗为 HTMLDocument
Dim oElement 作为对象
将 oTxtRgn 变暗为对象
将 sSelectedText 变暗为字符串
设置oDoc = WebBrowser1.Document'获取文档对象
Set oElement = oDoc.getElementById("T1")'获取ID="T1"的对象
设置oTxtRgn = oDoc.selection.createRange'获取文档当前选中的区域对象
sSelectedText = oTxtRgn.Text'选中区域文字赋值
oElement.Focus 的“T1”对象获得焦点
oElement.Select'选择所有对象“T1”
Debug.Print "您选择的文本:" & sSelectedText
上一段还自带其他功能,哈哈。为了简化这样的事情:
将 oDoc 变暗为对象
将 oTxtRgn 变暗为对象
将 sSelectedHTML 淡化为字符串
Set oDoc = WebBrowser1.Document'获取文档对象
Set oTxtRgn = oDoc.selection.createRange'获取文档当前选中的区域对象
sSelectedHTML = oTxtRgn.htmlText'选定区域文本赋值
Text1.Text=sSelectedHTML'文本框显示捕获HTML源代码
......'还是继续分析源码
================================================ ====================================================
我用WebBrowser获取网页源代码,运行正常,但编译后报错。
私有子命令1_Click()
WebBrowser1.导航“”
结束子
私有子 WebBrowser1_DownloadComplete()
'页面下载完成
昏暗的文档,objhtml
设置 doc = WebBrowser1.文档
设置 objhtml = doc.body.createtextrange()
If Not IsNull(objhtml) Then
Text1.Text = objhtml.htmltext
如果结束
结束子
我用WebBrowser获取网页源代码,运行正常,但编译后报错。
提醒:实时错误“91”对象变量或块变量未设置
可能是下载未完成造成的,
私有子 WebBrowser1_DownloadComplete()
如果 webbrowser.busy=false 那么
昏暗的文档,objhtml
设置 doc = WebBrowser1.文档
设置 objhtml = doc.body.createtextrange()
If Not IsNull(objhtml) Then
Text1.Text = objhtml.htmltext
如果结束
如果结束
结束子
网页源代码需要使用xmlhttp。
首先引用 msxml
Dim x As New MSXML2.XMLHTTP
x.open "get", "", False
x.发送
MsgBox StrConv(x.responseBody, vbUnicode)
================================================ ================================================
我在网上发现用rft控件保存网页浏览文本txtHtml是RichTextBox
txtHTML.Text = WebBrowser1.document.body.innerText
'flag:将rsftext另存为txt文件,strtmp文件路径
txtHTML.saveFile strtmp, rtfText
================================================ ======================================
私有子 WebBrowser1_DownloadComplete()
将 objHtml 淡化为对象
'下载完成后,状态栏显示“链接完成”
设置 objHtml = Me.WebBrowser1.Document.Body.Createtextrange()
If Not IsNull(objHtml) Then
Text1.Text = objHtml.htmltext
如果结束
结束子
使用inet控件
Source1 = Inet1.OpenURL("")
如果 Source1 "" 那么
RichTextBox1.Text = Source1
Me.Inet1.取消
其他
Source = MsgBox("源代码不可用。", vbInformation, "源代码")
如果结束
私有子命令1_Click()
Text1.Text = WebBrowser1.Document.body.innerHTML
结束子
================================================ ====================================
添加计时器、命令按钮、文本
私有子命令1_click()
网络浏览器1.导航
定时器1.enabled=true
结束子
私有子 timer1_timer()
dim doc,objhtml 作为对象
dim i 为整数
将 strhtml 淡化为字符串
如果不是浏览器1.忙则
设置 doc=webbrowser1.文档
i=0
设置 objhtml=doc.body.createtextrange()
如果不是 isnull(objhtml) 则
text1.text=objhtml.htmltext
如果结束
定时器1.enabled=false
如果结束
结束子
Dim doc, objhtml As Object
如果不是浏览器1.那么忙
设置 doc = webbrowser1.文档
设置 objhtml = doc.body.createtextrange()
If Not IsNull(objhtml) Then
text1.text=objhtml.htmltext
如果结束
设置文档 = 无
设置 objhtml = 无
如果结束
================================================ ==================================================== =
或者试试InternetReadFile,效果也不错:
选项显式
私有声明函数InternetOpen Lib“wininet.dll”别名“InternetOpenA”(_
ByVal sAgent As String,ByVal lAccessType As Long,_
ByVal sProxyName As String, ByVal sProxyBypass As String, _
ByVal lFlags As Long) As Long
私有声明函数InternetOpenUrl Lib“wininet.dll”别名“InternetOpenUrlA”(_
ByVal hInternetSession As Long, ByVal sUrl As String, _
ByVal sHeaders As String, ByVal lHeadersLength As Long, _
ByVal lFlags As Long, ByVal lContext As Long) As Long
私有声明函数 InternetReadFile Lib "wininet.dll" (_
ByVal hFile As Long, ByVal sBuffer As String, _
ByVal lNumBytesToRead As Long,_
lNumberOfBytesRead As Long) As Integer
私有声明函数 InternetCloseHandle Lib "wininet.dll" (_
ByVal hInet As Long) As Integer
私有常量 INTERNET_FLAG_NO_CACHE_WRITE = &H4000000
昏暗
私有函数GetUrlFile(stUrl As String) As String
把 lgInternet 调暗一样长,lgSession 一样长
将 stBuf 淡化为字符串 * 1024
将 inRes 变暗为整数
将lgRet调暗
将 stTotal 淡化为字符串
stTotal = vbNullString
lgSession = InternetOpen("VBTagEdit", 1, vbNullString, vbNullString, 0)
如果 lgSession 那么
lgInternet = InternetOpenUrl(lgSession, stUrl, vbNullString, _
0, INTERNET_FLAG_NO_CACHE_WRITE, 0)
如果 lgInternet 那么
做
inRes = InternetReadFile(lgInternet, stBuf, 1024, lgRet)
stTotal = stTotal & Mid$(stBuf, 1, lgRet)
Loop While (lgRet 0)
如果结束
inRes = InternetCloseHandle(lgInternet)
如果结束
GetUrlFile = stTotal
结束函数
私有子命令1_Click()
Text1.Text = GetUrlFile("")
结束子
================================================ ==================================================== ===
设置 vDoc = WebBrowser1.文档
'获取网页源代码
对于 vDoc.All 中的每个 o
DoEvents
htmlpage = htmlpage & o.innerHTML
下一步
然后用写二进制文件的方法将htmlpage的内容写入.html文件中。如果页面收录框架,则应处理该框架。
================================================ ==================================================== ======================