php抓取开奖网页内容(我在网上找到使用rft控件保存webbrowse文本(图))

优采云 发布时间: 2021-12-08 17:23

  php抓取开奖网页内容(我在网上找到使用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文件中。如果页面收录框架,则应处理该框架。

  ================================================ ==================================================== ======================

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线