msxml3.dll 錯(cuò)誤 80070005 拒絕訪問
來源:易賢網(wǎng) 閱讀:2014 次 日期:2016-07-07 14:46:18
溫馨提示:易賢網(wǎng)小編為您整理了“msxml3.dll 錯(cuò)誤 80070005 拒絕訪問”,方便廣大網(wǎng)友查閱!

msxml3.dll 錯(cuò)誤 80070005拒絕訪問。 解決辦法: 賦予程序所在文件夾 internet 來賓帳號(hào)(IUSR_WEB)可寫。

昨天在采集某一個(gè)網(wǎng)站的時(shí)候,采集程序出錯(cuò)了。

是自寫的采集程序。

經(jīng)過搜索以后,查到一些沒有用的結(jié)果,后來發(fā)現(xiàn),用Msxml2.ServerXMLHTTP替換掉Msxml2.XMLHTTP,問題成功解決。

以下是分析排錯(cuò)過程。

老是采集一段時(shí)間就掛了,指定資源下載失敗,或者拒絕訪問。

后來直接全部是拒絕訪問。

一開始,認(rèn)為,對(duì)方服務(wù)器做了防采集設(shè)置,比如有時(shí)間限制之類的。

于是更改程序,原先是直接獲取列表頁,然后持續(xù)循環(huán)獲得文章列表。改了采集文件結(jié)構(gòu),

原來是就一個(gè)文件,類,數(shù)據(jù)庫連接,數(shù)據(jù)處理全部在一個(gè)文件里,再采集某一篇文章的時(shí)候,后天加了一個(gè)時(shí)間循環(huán)。等待5秒的。代碼如下

代碼如下:

sTime=Timer()

dTime=Timer()-sTime

do while dTime < 5

dTime=Timer()-sTime

loop

確實(shí)是能等待5秒鐘,但是很快就發(fā)現(xiàn),這個(gè)循環(huán)太過消耗CPU資源,一到這個(gè)循環(huán),CPU占用率持續(xù)100%,于是馬上放棄這個(gè)方案。

另做了一個(gè)文件。只根據(jù)文章URL抓取文章的相關(guān)內(nèi)容并寫入數(shù)據(jù)庫,寫入完畢后輸出自動(dòng)跳轉(zhuǎn)代碼。

核心思想就是用了<meta http-equiv="refresh" content="5;url=someurl.asp">

這是一個(gè)定時(shí)跳轉(zhuǎn)的代碼,相信大家都很熟悉。

我的原理做法就是,用一開始的文件,抓取所有的文章連接地址,以及相關(guān)導(dǎo)航代碼,保存到數(shù)據(jù)庫中。

然后用新做的抓取文章內(nèi)容的程序,讀取數(shù)據(jù)庫記錄,逐條進(jìn)行采集。

數(shù)據(jù)庫記錄中有一個(gè)flag標(biāo)記,tinyint類型,默認(rèn)是0,采集成功更新為1,失敗更新為2

這樣,每次從數(shù)據(jù)庫中讀取一條未采集的數(shù)據(jù),也就是讀取flag=0的數(shù)據(jù),進(jìn)行操作。操作完畢等待5秒跳轉(zhuǎn)到自身。

想法跟思路是很好的。文章URL數(shù)據(jù)庫也采集準(zhǔn)備好了,一上采集文章具體內(nèi)容,又出錯(cuò)了。一直是msxml3.dll 錯(cuò)誤 '80070005'

拒絕訪問的錯(cuò)誤。

那個(gè)郁悶,想開一晚上機(jī)器,自動(dòng)采集,破滅。

今天早上來搜索查詢資料,查詢到的絕大多數(shù)都是無用信息。

基本上都是說權(quán)限問題。

msxml3.dll 錯(cuò)誤 '80070005'

拒絕訪問。

解決辦法:

賦予程序所在文件夾 internet 來賓帳號(hào)(IUSR_WEB)可寫。

做法:

選擇cachefile-屬性-安全-添加(IUSR_WEB)-寫入

都是這么說的。莫名其妙的,我的是FAT32的不存在NTFS格式的那種安全權(quán)限問題,IIS設(shè)置也正常,

我的問題是采集一部分就拒絕訪問。肯定不是這個(gè)問題。

繼續(xù)搜索,找到另一個(gè)方案說是,用Msxml2.XMLHTTP替換掉Microsoft.XMLHTTP,我本來用的就是Msxml2.XMLHTTP的

繼續(xù)搜索。找到最終解決方案應(yīng)該是用Msxml2.ServerXMLHTTP

先前也搜到這個(gè)結(jié)果,由于大意,沒有及時(shí)注意到,以下是搜索過程找到的有用的相關(guān)資料。

代碼如下:

PostUrl=http://www.xxx.com/

Server.ScriptTimeOut=20

Set oXMLHttp = createObject("Microsoft.XMLHTTP")

Call oXMLHttp.Open("get", PostUrl, false)

Call oXMLHttp.Send("")

sHtmlStr = oXMLHttp.responseBody

Set oXMLHttp = nothing

初步判定可能是打開的頁面有跳轉(zhuǎn)的原因,解決辦法是用

MSXML2.ServerXMLHTTP

替換掉

Microsoft.XMLHTTP

即可解決。

另外在CSDN上找到這么一段代碼

代碼如下:

ServerURL=PostUrl

Set Mail1 = Server.CreateObject("CDO.Message")

Mail1.CreateMHTMLBody ServerURL,31

AA=Mail1.HTMLBody

Set Mail1 = Nothing

Response.Write AA

試了一下,也可以用,拷過來收藏

代碼如下:

<%

' 定義變量

Dim objXmlHttp

Dim strHTML

'這是Msxml3.0中的一個(gè)穩(wěn)定版本.

'使用Msxml2.ServerXMLHTTP,不使用Msxml2.XMLHTTP

Set objXmlHttp = Server.CreateObject("Msxml2.ServerXMLHTTP")

' 如果你發(fā)現(xiàn)以下錯(cuò)誤

' msxml3.dll error '80070005'

' 存取被拒絕.

' 可能是上網(wǎng)時(shí)使用了代理產(chǎn)生了錯(cuò)誤

' 使用 proxycfg.exe 工具. :

'

' proxycfg -d

' 檢查是否采用了代理上網(wǎng)

' 同時(shí)可以參看這個(gè)帖子: http://www.asp101.com/forum/display_message.asp?mid=51841

'

' 這個(gè)版本太舊且不穩(wěn)定

'Set objXmlHttp = Server.CreateObject("Msxml2.XMLHTTP")

' 現(xiàn)在我們開始發(fā)送請(qǐng)求.

' 套用微軟的話來講: 初始化一個(gè)請(qǐng)求,并且指定該請(qǐng)求的方法(get,post等等),

' URL, 和權(quán)限驗(yàn)證信息(用戶名,密碼,等等)。

' 格式:

' .open(bstrMethod, bstrUrl, bAsync, bstrUser, bstrPassword)

'objXmlHttp.open "GET", "http://www.yahoo.com", False

objXmlHttp.open "GET", "http://www.yahoo.com", False

' 以直接的方式發(fā)送請(qǐng)求出去.

objXmlHttp.send

' 打印返回狀態(tài):

Response.Write "Status: " & objXmlHttp.status & " " _

& objXmlHttp.statusText & "<br />"

' 獲取響應(yīng)返回的文本.

' 這個(gè)對(duì)象本身是用來操作XML的,所以具備以下屬性:

' responseBody, responseStream, 和 responseXML.

' 但是我們現(xiàn)在只需要文本信息

strHTML = objXmlHttp.responseText

' 但這個(gè)對(duì)象實(shí)例不再使用時(shí),需要清除這個(gè)對(duì)象實(shí)例.

Set objXmlHttp = Nothing

' 現(xiàn)在我們要做的就是顯示我們獲取到的HTML.

' 首先看瀏覽器解釋的效果

' 然后顯示其源碼

' 下面的類似<h1>s 和 <table>s只是為了展現(xiàn)獲取到的內(nèi)容,本身不屬于獲取的內(nèi)容.

%>

<h1>Here's The Page:</h1>

<table border="1" bgcolor="#FFFFFF">

<tr><td>

<%= strHTML %>

</td></tr>

</table>

<br />

<h1>Here's The Code:</h1>

<table border="1" bgcolor="#FFFFFF">

<tr><td>

<pre>

<%= Server.HTMLEncode(strHTML) %>

</pre>

</td></tr>

</table>

更多信息請(qǐng)查看腳本欄目
易賢網(wǎng)手機(jī)網(wǎng)站地址:msxml3.dll 錯(cuò)誤 80070005 拒絕訪問
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

2025國考·省考課程試聽報(bào)名

  • 報(bào)班類型
  • 姓名
  • 手機(jī)號(hào)
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺(tái) | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)