国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > Access > 正文

用Access分析網(wǎng)站實例

2024-09-07 19:05:40
字體:
供稿:網(wǎng)友

如何用 Access 分析一個網(wǎng)站,或者在網(wǎng)站上提交一個查詢,得到結(jié)果后存儲進數(shù)據(jù)庫哪?

如何用 Access 下載 DVBBS 論壇上所有的帖子?

如何用 ACCESS 編寫灌水程序?

方法一:

答案非常簡單—— DHTML 編程。

有人可能問了,ACCESS 使用的是 VBA ,而 DHTML 中使用的是 VBS 怎么可能通用哪?其實 VBS / VBA 都是 VB 的子集。在 Access 中只要引用

Microsoft Internet Controls

Microsoft HTML Object Library

即可,然后在窗體上加入 “Microsoft Web 瀏覽器”控件

好了,下面就以我寫的一個讀取某 IP 物理地域查詢網(wǎng)站頁面的數(shù)據(jù)庫為例說明 DHTML / “Microsoft Web 瀏覽器”控件在 ACCESS 的應(yīng)用吧。

“Microsoft Web 瀏覽器”控件的作用是什么哪?主要就是為了獲得 DOCUMENT 對象的,DHTML 的操作都是以 DOCUMENT 對象為運行基礎(chǔ)的。

要完成讀取網(wǎng)頁的功能我們必須了解 DHTML 的幾個簡單的對象以及屬性

1、DOCUMENT 對象:代表這整個 HTML 文檔

2、BODY 對象:是 DOCUMENT 對象的子對象,里面存儲著所有顯示給用戶看的 HTML 代碼

3、innerText 屬性:頁面中顯示給客戶看的文本,注意:不是 HTML 代碼呦

4、innerHTML屬性:構(gòu)成頁面的 HTML 代碼

5、對象.all.length屬性:頁面中所有 element 的個數(shù)。(all 用于表示所有對象)

ok ,接下來就讓我們一邊寫代碼,一邊分析吧:

以下為引用的內(nèi)容:

  Option Compare Database
  Dim blnSwitch As Boolean
  Private Sub Command1_Click()        '用于啟動瀏覽功能
 
    Me.WebBrowser3.Navigate ("http://ip.loveroot.com/index.php?job=search")
  End Sub

  Private Sub Command11_Click()   '將需要搜索的IP 寫入全局變量
    splitIP Text1.Value
  End Sub
  Function splitIP(strip) '將需要搜索的IP 寫入全局變量
  Dim a() As String
  strip = strip & "."
  a = Split(strip, ".")

  Dim i As Long
  For i = 0 To UBound(a)
    If a(i) = "" Then a(i) = "0"
    lngSearchIP(4 - i) = CLng(a(i))
  Next i

  End Function

  Sub WriteLog(ip1 As String)         '讀取結(jié)果
    Dim dc As MSHTML.HTMLDocument
    Dim Bd As MSHTML.HTMLBody
    Dim El As MSHTML.HTMLElementCollection
    Dim strip As String
    Dim strAdd As String
    Dim strSql
    Dim i As Long
    Set dc = WebBrowser3.Document

Set Bd = dc.body
   
    Dim lngStart As Long
   
    '循環(huán) DOCUMENT 中所有的元素獲取需要的字符
 
    For i = 0 To dc.all.length - 1
        '由于該服務(wù)器重寫界面,我改了一下分析代碼
        'If dc.all(i).tagName = "p" And Left(dc.all(i).innerText, 4) = "查詢結(jié)果" Then
        If dc.all(i).tagName = "p" And Left(dc.all(i).innerText, 8) = "官方數(shù)據(jù)查詢結(jié)果" Then
            '由于該服務(wù)器重寫界面,我改了一下分析代碼
            'strAdd = Mid(dc.all(i).innerText, InStr(1, dc.all(i).innerText, "(") + 2, InStr(1, dc.all(i).innerText, ")") -     InStr(1, dc.all(i).innerText, "(") - 3)
            'strip = Mid(dc.all(i).innerText, InStr(1, dc.all(i).innerText, "查詢結(jié)果:") + 6, InStr(1, dc.all(i).innerText, "(") - InStr(1, dc.all(i).innerText, "查詢結(jié)果:") - 7)
            strAdd = Right(dc.all(i).innerText, Len(dc.all(i).innerText) - InStr(dc.all(i).innerText, " - ") - 3)
            strip = strNowIP
            LabelSIP.Caption = strip & strAdd
            'ok 終于得到需要的數(shù)據(jù)了,用 SQL 語句直接寫入數(shù)據(jù)庫吧
            strSql = "update ipaddress set [ip1]='" & strip & "',[add]='" & strAdd & "' where mark='last'"
            CurrentProject.Connection.Execute strSql
            strSql = "insert into ipaddress([ip1],[add],[mark],[enip]) values('" & strip & "','" & strAdd & "','no'," & CStr(enaddr(strip)) & ")"
            CurrentProject.Connection.Execute strSql

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 琼海市| 庐江县| 安远县| 郯城县| 民和| 许昌县| 台东市| 阿城市| 郓城县| 麦盖提县| 文水县| 紫云| 黔东| 五莲县| 巩义市| 沐川县| 大丰市| 安国市| 乐山市| 开化县| 白朗县| 于都县| 莲花县| 罗江县| 曲周县| 长岭县| 阿克苏市| 襄城县| 瓦房店市| 侯马市| 钟山县| 武清区| 桐庐县| 惠州市| 德州市| 贵州省| 北票市| 安福县| 深圳市| 宜城市| 台湾省|