亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > Access > 正文

用Access分析網站實例

2024-09-07 19:03:38
字體:
來源:轉載
供稿:網友

如何用 Access 分析一個網站,或者在網站上提交一個查詢,得到結果后存儲進數據庫哪?

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

如何用 ACCESS 編寫灌水程序?

方法一:

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

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

Microsoft Internet Controls

Microsoft HTML Object Library

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

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

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

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

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

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

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

4、innerHTML屬性:構成頁面的 HTML 代碼

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

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

以下為引用的內容:

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) '讀取結果
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

'循環 DOCUMENT 中所有的元素獲取需要的字符

For i = 0 To dc.all.length - 1
'由于該服務器重寫界面,我改了一下分析代碼
'If dc.all(i).tagName = "p" And Left(dc.all(i).innerText, 4) = "查詢結果" Then
If dc.all(i).tagName = "p" And Left(dc.all(i).innerText, 8) = "官方數據查詢結果" Then
'由于該服務器重寫界面,我改了一下分析代碼
'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, "查詢結果:") 6, InStr(1, dc.all(i).innerText, "(") - InStr(1, dc.all(i).innerText, "查詢結果:") - 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 終于得到需要的數據了,用 SQL 語句直接寫入數據庫吧
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
Exit For
End If
Next i

Dim strNewIP As String
strNewIP = refreshIP
On Error Resume Next

'利用 DHTML 的 innerHTML 來更改網頁的源代碼,建立一個簡單的 FORM ,然后提交給服務器,繼續查詢下面的 IP

以下為引用的內容:
Bd.innerHTML = "<form method='POST' action='index.php?job=search' target='_parent'><input type='text' name='search_ip' ><input type='submit' value='查詢' name='B1'></form>"
'在 INPUT TEXT search_ip 中填入 IP。
dc.all.Item("search_ip").Value = strNewIP
'用 DHTML 提交 FORM 到服務器
dc.all.Item("b1").Click
End Sub

Private Sub Form_Open(Cancel As Integer)
Text1.Value = Nz(DLookup("ip1", "ipaddress", "[mark]='last" & Me.Caption & "'"), "1.0.0.0")

End Sub

Private Sub WebBrowser3_DownloadComplete()

'該事件在頁面成功下載到本地時運行,這時候 DOCUMENT 對象


'已經完全被客戶端瀏覽器讀取了,我們只要獲取 Body 對象中的 innerHTML 即可

以下為引用的內容:

If Len(strNowIP) = 0 Then
splitIP Text1.Value
End If

If check1.Value = True Then
Call WriteLog("61.12.15.117")
End If
End Sub

Function refreshIP() As String '搜索完一個IP以后再搜索下面一個
Dim i As Long
lngSearchIP(2) = lngSearchIP(2) 1
For i = 2 To 4

If lngSearchIP(i) >= 256 Then
lngSearchIP(i) = 0
lngSearchIP(i 1) = lngSearchIP(i 1) 1
End If
Next i
refreshIP = Format(lngSearchIP(4), "0") & "." & Format(lngSearchIP(3), "0") & "." & Format(lngSearchIP(2), "0") & "." & Format(lngSearchIP(1), "0")
strNowIP = refreshIP
Debug.Print refreshIP
End Function

以下代碼請新建一個模塊后 COPY 進去

以下為引用的內容:

Option Compare Database
Public lngSearchIP(4) As Long
Public strNowIP As String
Public strOKAddress As String
Public strOKIP As String
Public blnStop As Boolean
Function writeOKIP()
Dim rs As New ADODB.Recordset
Dim strSql As String

strSql = "select * from ipaddress order by enip"
rs.Open strSql, CurrentProject.Connection, 1, 1

Dim strAdd1 As String

Dim strIP1 As String
Dim lngENIP1 As Long
Dim strState As String
strState = "start"

Dim i As Long
Dim iA As Long
iA = rs.RecordCount

Do Until rs.EOF
If blnStop = True Then Exit Function
If strAdd1 <> rs("add") Then
strSql = "update ipaddress_ok set ip2='" & strIP1 & " ',enip2=" & Str(lngENIP1) & ",mark=' where mark='setting'"
CurrentProject.Connection.Execute strSql
DoEvents
strSql = "insert into ipaddress_ok (ip1,enip1,[mark],[add]) values('" & rs("ip1") & "'," & Str(rs("enip")) & ",'setting','" & rs("add") & "')"
CurrentProject.Connection.Execute strSql
DoEvents
End If

strAdd1 = rs("add")
strIP1 = rs("ip1")
lngENIP1 = rs("enip")
i = i 1


Form_控制.Label4.Caption = Str(Int(i / iA * 10000) / 100) & "%"
rs.MoveNext
Loop
rs.Close


strSql = "update ipaddress_ok set ip2=mid(ip2,1,len(ip2)-2) & '255'"
CurrentProject.Connection.Execute strSql
strSql = "update ipaddress_ok set enip1=enaddr(ip1)"
CurrentProject.Connection.Execute strSql
strSql = "update ipaddress_ok set enip2=enaddr(ip2)"
CurrentProject.Connection.Execute strSql
End Function
Function enaddr(Sip As String) As Double

'用代理無法連接的問題還要解決

'將字符的 IP 編碼為長整的 IP

以下為引用的內容:

On Error Resume Next
Dim str1 As String
Dim str2 As String
Dim str3 As String
Dim str4 As String
Sip = CStr(Sip)
str1 = Left(Sip, CInt(InStr(Sip, ".") - 1))
Sip = Mid(Sip, CInt(InStr(Sip, ".")) 1)
str2 = Left(Sip, CInt(InStr(Sip, ".")) - 1)
Sip = Mid(Sip, CInt(InStr(Sip, ".")) 1)
str3 = Left(Sip, CInt(InStr(Sip, ".")) - 1)
str4 = Mid(Sip, CInt(InStr(Sip, ".")) 1)
enaddr = CLng(str1) * 256 * 256 * 256 CLng(str2) * 256 * 256 CLng(str3) * 256 CLng(str4) - 1
End Function

Function deaddr(Sip)

'將編碼為長整的 IP 重現轉換為字符型的 IP

以下為引用的內容:

Dim s1, s21, s2, s31, s3, s4
Sip = Sip 1
s1 = Int(Sip / 256 / 256 / 256)



s21 = s1 * 256 * 256 * 256
s2 = Int((Sip - s21) / 256 / 256)
s31 = s2 * 256 * 256 s21
s3 = Int((Sip - s31) / 256)
s4 = Sip - s3 * 256 - s31
deaddr = CStr(s1) "." CStr(s2) "." CStr(s3) "." CStr(s4)
End Function

示例請參考:http://access911.net/down/eg/User_DHTML_search_IP.rar

上述程序會自動去 http://ip.loveroot.com/index.php?job=search 搜索所有的 IP 以及對應的物理地址并保存到數據庫中

修訂:剛才上了一下網站,發現界面竟然改了,又重新修改了一下讀取頁面的程序。

關于 WebBrowser 控件的資料請參考 VB6 中 MSDN 的以下章節

以下為引用的內容:

Internet Client SDK
Internet Tools & Technologies
Reusing the WebBrowser and MSHTML

inet401/help/itt/ieprog/IEProg.htm#book_browsing(BOOKMARK)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久热精品视频在线| 97精品欧美一区二区三区| 欧美中文在线观看| 精品久久久久久久久久久久久| 精品亚洲精品福利线在观看| 国内精品久久久久久| 亚洲小视频在线观看| 国产欧美日韩精品丝袜高跟鞋| 欧美xxxx做受欧美.88| 中文字幕一区二区精品| 日韩精品亚洲视频| 亚洲女在线观看| 国语自产在线不卡| 日韩美女视频免费在线观看| 亚洲精品在线不卡| 欧美成人精品影院| 欧美大片大片在线播放| 黄色一区二区在线观看| 亚洲国产高清自拍| 国模私拍一区二区三区| 日韩**中文字幕毛片| 91九色蝌蚪国产| 久久人人看视频| 欧美精品在线第一页| 国产日韩欧美中文在线播放| 亚洲九九九在线观看| 欧洲成人午夜免费大片| 亚洲欧洲第一视频| 91精品综合视频| 亚洲人成啪啪网站| 国产日本欧美视频| 欧美最猛性xxxxx(亚洲精品)| 日韩欧美福利视频| 精品国产91乱高清在线观看| 亚洲一区二区三| 日韩精品在线观看网站| 国语自产精品视频在线看一大j8| 欧美激情视频在线免费观看 欧美视频免费一| 久久精品国产96久久久香蕉| 日韩高清av一区二区三区| 欧美一级淫片videoshd| 4k岛国日韩精品**专区| 91精品国产综合久久男男| 久久777国产线看观看精品| 亚洲自拍偷拍网址| 久久久久久久一| 97婷婷大伊香蕉精品视频| 久久久欧美精品| 日韩成人小视频| 在线视频欧美日韩精品| 久热在线中文字幕色999舞| 亚洲国模精品一区| 欧美日韩亚洲国产一区| 日韩精品在线私人| 亚洲最大福利网| 国产精品国模在线| 国产日本欧美一区二区三区在线| 亚洲免费伊人电影在线观看av| 91精品国产高清自在线看超| 亚洲天堂av图片| 91高清免费视频| 久久久久久九九九| 成人动漫网站在线观看| 亚洲国产精品久久久久| 国产精品香蕉在线观看| 欧美成人亚洲成人| 日韩毛片中文字幕| 日韩中文字幕第一页| 国产精品视频免费在线| 日韩欧美在线第一页| 成人国产亚洲精品a区天堂华泰| 日韩av在线精品| 亚洲一级黄色片| 国产日韩中文字幕在线| 欧美大片免费看| 亚洲色图18p| 日本一欧美一欧美一亚洲视频| 欧美国产日韩一区二区三区| 日韩免费看的电影电视剧大全| 欧美成人一二三| 国产69精品99久久久久久宅男| 中文字幕亚洲无线码在线一区| 久久99青青精品免费观看| 亚洲国产另类 国产精品国产免费| 亚洲欧美综合精品久久成人| 欧美极品在线视频| 精品无人国产偷自产在线| 日韩av在线最新| 亚洲精品福利在线| 成人黄色午夜影院| 国产丝袜一区二区| 欧美性视频精品| 亚洲欧美激情在线视频| 久久久久久久久久久久久久久久久久av| 日韩欧美中文免费| 亚洲色图第一页| 亚洲男人第一av网站| 一区二区三区高清国产| 欧美有码在线观看| 成人看片人aa| 国产成人jvid在线播放| 日韩成人激情在线| 国产一区二区三区视频在线观看| 亚洲国产精品成人一区二区| 中文字幕亚洲一区在线观看| 在线日韩精品视频| 欧美一区二三区| 91干在线观看| 亚洲国产精品久久久| 国产美女91呻吟求| 亚洲伊人久久大香线蕉av| 国产一区二区丝袜高跟鞋图片| 97精品免费视频| 日韩精品久久久久久久玫瑰园| 国产亚洲精品美女| 社区色欧美激情 | 九九视频直播综合网| 欧美日韩激情网| 色综合视频一区中文字幕| 亚洲一区二区少妇| 午夜精品三级视频福利| 亚洲精选在线观看| 伊人亚洲福利一区二区三区| 少妇激情综合网| 国产成人精品国内自产拍免费看| 久久久中文字幕| 中文字幕日本精品| 亚洲石原莉奈一区二区在线观看| 91精品国产色综合久久不卡98口| 国产成人精品免高潮费视频| 亚洲第一福利网| 国产亚洲欧洲高清| 91免费观看网站| 九色精品免费永久在线| 日韩一区二区欧美| 色婷婷av一区二区三区在线观看| 亚洲女人初尝黑人巨大| 亚洲精品乱码久久久久久金桔影视| 久久影视免费观看| 久久久爽爽爽美女图片| 日韩av免费网站| 久久91亚洲精品中文字幕奶水| 中文字幕在线看视频国产欧美| 亚洲精品理论电影| 欧美激情精品久久久久久久变态| 91国产精品视频在线| 久久精品91久久久久久再现| 亚洲欧美综合区自拍另类| 91国自产精品中文字幕亚洲| 日韩中文字幕在线| 久久资源免费视频| 91免费的视频在线播放| 在线观看视频亚洲| 欧美激情亚洲综合一区| 人妖精品videosex性欧美| 欧美日韩在线视频首页| 久久夜色精品亚洲噜噜国产mv| 日韩在线观看免费网站| 亚洲成人国产精品| 成人观看高清在线观看免费| 国产成人精品免费久久久久| 国产精品扒开腿做爽爽爽的视频| 日韩一区二区三区xxxx| 欧美成人午夜影院|