⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 admin_collection.asp

📁 个人网站比较简短
💻 ASP
📖 第 1 页 / 共 5 页
字号:
                                ListPaingNext = Replace(ListPaingNext, "&", "{$ID}")
                            End If
                        End If
                    Else
                        ListPaingNext = "$False$"
                    End If
                    
                    If ListCode = "$False$" Then
                        FoundErr = True
                        ErrMsg = ErrMsg & "<li>在获取:" & ListUrl & "网页源码时发生错误!</li>"
                    Else
                        ListCode = GetBody(ListCode, LsString, LoString, False, False) '截取列表字符串
                        If ListCode = "$False$" Or ListCode = "" Then
                            FoundErr = True
                            ErrMsg = ErrMsg & "<li>在截取:" & ListUrl & "列表时发生错误!</li>"
                        End If
                    End If
                End If
                If FoundErr <> True Then
                    NewsArrayCode = GetArray(ListCode, HsString, HoString, False, False) 'NewsArrayCode=在列表中提取链接地址
                    If ThumbnailType = 1 Then
                        ThumbnailArrayCode = GetArray(ListCode, ThsString, ThoString, False, False) '缩略图地址
                    End If
                End If

                If NewsArrayCode = "$False$" Or FoundErr = True Then
                    FoundErr = True
                    ErrMsg = ErrMsg & "<li>在分析:" & ListUrl & "新闻列表时发生错误!</li>"
                    ItemNum = ItemNum + 1
                    ListNum = 1
                    ArticleList = ""
                    '生成Html
                    Call GetArrOfCreateHTML
                    Response.Write "   <meta http-equiv=""refresh"" content=" & TimeNum & ";url=""Admin_Collection.asp?Action=Start&ItemNum=" & ItemNum & "&ListNum=" & ListNum & "&Arr_i=" & Arr_i & "&CollecNewsA=" & CollecNewsA & "&CollecNewsi=" & CollecNewsi & "&IsTitle=" & Trim(Request("IsTitle")) & "&IsLink=" & Trim(Request("IsLink")) & "&CollecNewsj=" & CollecNewsj & "&ItemIDtemp=" & ItemIDtemp & "&rnd_temp=" & rnd_temp & "&ArticleList=" & ArticleList & "&ItemSucceedNum=" & ItemSucceedNum & "&ItemSucceedNum2=" & ItemSucceedNum2 & "&ImagesNumAll=" & ImagesNumAll & "&ItemID=" & ItemIDStr & "&CollecType=" & CollecType & "&CollecTest=" & Trim(Request("CollecTest")) & "&Content_view=" & Trim(Request("Content_view")) & "&ListPaingNext=" & ListPaingNext & "&CollectionCreateHTML=" & CollectionCreateHTML & "&Timing_AreaCollection=" & Timing_AreaCollection & "&TimingCreate=" & TimingCreate & """>"
                    Call WriteErrMsg(ErrMsg, ComeUrl)

                    Exit Sub
                Else
                    '分割链接文章地址
                    NewsArray = Split(NewsArrayCode, "$Array$")
                    For Arr_j = 0 To UBound(NewsArray)
                        '当链接地址要从新定位时?
                        If HttpUrlType = 1 Then
                            NewsArray(Arr_j) = Trim(Replace(HttpUrlStr, "{$ID}", NewsArray(Arr_j)))
                        Else
                            '过滤空格并将相对地址转换为绝对地址
                            NewsArray(Arr_j) = Trim(DefiniteUrl(NewsArray(Arr_j), ListUrl))
                        End If
                    Next
                    If PE_CLng(CollecOrder) = 1 Then '如果是倒序采集
                        '颠倒当前数组的顺序
                        For Arr_j = 0 To Fix(UBound(NewsArray) / 2)
                            OrderTemp = NewsArray(Arr_j)
                            NewsArray(Arr_j) = NewsArray(UBound(NewsArray) - Arr_j)
                            NewsArray(UBound(NewsArray) - Arr_j) = OrderTemp
                        Next
                    End If
                    '列表缩略图地址
                    If ThumbnailType = 1 Then
                        '分割链接文章地址
                        ThumbnailArray = Split(ThumbnailArrayCode, "$Array$")
                        For Arr_j = 0 To UBound(ThumbnailArray)
                            '过滤空格并将相对地址转换为绝对地址
                            ThumbnailArray(Arr_j) = Trim(DefiniteUrl(ThumbnailArray(Arr_j), ListUrl))
                        Next
                        If PE_CLng(CollecOrder) = 1 Then '如果是倒序采集
                            '颠倒当前数组的顺序
                            For Arr_j = 0 To Fix(UBound(ThumbnailArray) / 2)
                                OrderTemp = ThumbnailArray(Arr_j)
                                ThumbnailArray(Arr_j) = ThumbnailArray(UBound(ThumbnailArray) - Arr_j)
                                ThumbnailArray(UBound(ThumbnailArray) - Arr_j) = OrderTemp
                            Next
                        End If
                        PE_Cache.SetValue "ThumbnailList" & rnd_temp, ThumbnailArray '加载缓存
                    End If
                    PE_Cache.SetValue "ArticleList" & rnd_temp, NewsArray '加载缓存

                    '更新断点记录
                    sql = "select Timing_Breakpoint from PE_config"
                    Set rs = Server.CreateObject("adodb.recordset")
                    rs.Open sql, Conn, 1, 3
                    rs("Timing_Breakpoint") = " <meta http-equiv=""refresh"" content=0;url=""Admin_Collection.asp?Action=Start&ItemNum=" & ItemNum & "&ListNum=" & ListNum & "&Arr_i=" & Arr_i & "&CollecNewsA=" & CollecNewsA & "&CollecNewsi=" & CollecNewsi & "&CollecNewsj=" & CollecNewsj & "&IsTitle=" & Trim(Request("IsTitle")) & "&IsLink=" & Trim(Request("IsLink")) & "&ItemIDtemp=" & ItemIDtemp & "&rnd_temp=" & rnd_temp & "&ArticleList=" & ArticleList & "&ItemSucceedNum=" & ItemSucceedNum & "&ItemSucceedNum2=" & ItemSucceedNum2 & "&ImagesNumAll=" & ImagesNumAll & "&ItemID=" & ItemIDStr & "&CollecType=" & CollecType & "&CollecTest=" & Trim(Request("CollecTest")) & "&Content_view=" & Trim(Request("Content_view")) & "&ListPaingNext=" & ListPaingNext & "&CollectionCreateHTML=" & CollectionCreateHTML & "&Timing_AreaCollection=" & Timing_AreaCollection & "&TimingCreate=" & TimingCreate & """>"
                    rs.Update
                    rs.Close
                    Set rs = Nothing

                    Response.Write " <meta http-equiv=""refresh"" content=0;url=""Admin_Collection.asp?Action=Start&ItemNum=" & ItemNum & "&ListNum=" & ListNum & "&Arr_i=" & Arr_i & "&CollecNewsA=" & CollecNewsA & "&CollecNewsi=" & CollecNewsi & "&CollecNewsj=" & CollecNewsj & "&IsTitle=" & Trim(Request("IsTitle")) & "&IsLink=" & Trim(Request("IsLink")) & "&ItemIDtemp=" & ItemIDtemp & "&rnd_temp=" & rnd_temp & "&ArticleList=" & ArticleList & "&ItemSucceedNum=" & ItemSucceedNum & "&ItemSucceedNum2=" & ItemSucceedNum2 & "&ImagesNumAll=" & ImagesNumAll & "&ItemID=" & ItemIDStr & "&CollecType=" & CollecType & "&CollecTest=" & Trim(Request("CollecTest")) & "&Content_view=" & Trim(Request("Content_view")) & "&ListPaingNext=" & ListPaingNext & "&CollectionCreateHTML=" & CollectionCreateHTML & "&Timing_AreaCollection=" & Timing_AreaCollection & "&TimingCreate=" & TimingCreate & """>"
                    Exit Sub
                End If
            Else
                '生成Html
                Call GetArrOfCreateHTML

                ErrMsg = ErrMsg & "<br><font color=red>" & ItemName & "</font> 项目采集任务完成!</li>"
                Call WriteSuccessMsg2(ErrMsg)
                Exit Sub
            End If
        Else
            NewsArray = PE_Cache.GetValue("ArticleList" & rnd_temp)
            If ThumbnailType = 1 Then
                ThumbnailArray = PE_Cache.GetValue("ThumbnailList" & rnd_temp)
            End If
        End If
        
        '加载导航信息
        Response.Write "<table width=""100%"" border=""0"" align=""center"" cellpadding=""0"" cellspacing=""1"" class=""border"" >" & vbCrLf
        Response.Write "    <tr> " & vbCrLf
        Response.Write "      <td height=""22"" colspan=""2"" class=""tdbg"" align=""left"">&nbsp;&nbsp;采集需要一定的时间,请耐心等待,如果网站出现暂时无法访问的情况这是正常的,采集过程正常结束后即可恢复。" & vbCrLf
        Response.Write "      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type=""button""  name=""Stop""  value=""停止采集""  onCLICK=""location.href='Admin_Collection.asp?Action=StopCollection&rnd_temp=" & rnd_temp & "&CollecNewsi=" & CollecNewsi & "&CollecNewsj=" & CollecNewsj & "&IsTitle=" & Trim(Request("IsTitle")) & "&IsLink=" & Trim(Request("IsLink")) & "&ItemSucceedNum2=" & ItemSucceedNum2 & "&ImagesNumAll=" & ImagesNumAll & "&CollecType=" & CollecType & "&CollecTest=" & Trim(Request("CollecTest")) & "&Content_view=" & Trim(Request("Content_view")) & "&CollectionCreateHTML=" & CollectionCreateHTML & "&ChannelID=" & ChannelID & "&ClassID=" & ClassID & "&SpecialID=" & SpecialID & "&CreateImmediate=" & CreateImmediate & "&UseCreateHTML=" & UseCreateHTML & "&TimingCreate=" & TimingCreate & "'"">" & vbCrLf
        Response.Write "      </td>" & vbCrLf
        Response.Write "    </tr>" & vbCrLf
        '加载显示采集全局信息
        Response.Write "    <tr>" & vbCrLf
        Response.Write "      <td height=""22"" colspan=""2"" class=""tdbg"" align=""left"">&nbsp;&nbsp;本次运行:" & UBound(ItemIDArray) + 1 & " 个项目,正在采集第 <font color=red>" & ItemNum & "</font> 个项目  <font color=red>" & ItemName & "</font>  的第   <font color=red>" & ListNum & "</font> 页列表,该列表待采集新闻  <font color=red>" & UBound(NewsArray) + 1 & "</font> 条,中的第 <font color=red>" & Arr_i + 1 & "</font> 条。" & vbCrLf
        Response.Write "    </tr>" & vbCrLf
        Response.Write "    <tr>"
        Response.Write "      <td height=""22"" colspan=""2"" class=""tdbg"" align=""left"">&nbsp;&nbsp;采集统计:成功采集--" & CollecNewsi & "  条新闻,失败--" & CollecNewsj & "  条,图片--" & ImagesNumAll & "</td>" & vbCrLf
        Response.Write "    </tr>" & vbCrLf
        Response.Write "</table>" & vbCrLf
        Response.Write "<br>"
        StartTime = Timer()

        If CollecType = 0 Then
            '执行核心采集过程
            Call StartCollection
            '………………………………………………
            '采集数处理 当前列表采集完成 or 指定数完成
            If CollectionType = 0 And CollectionNum <> "" Then
                If CLng(ItemSucceedNum2) >= CLng(CollectionNum) Then
                    '生成Html
                    Call GetArrOfCreateHTML
                    ListNum = ListNum + 1
                    ArticleList = ""
                    ItemSucceedNum2 = 0 '统计数采集项目都清0为下一个采集项目准备
                Else
                    Arr_i = Arr_i + 1 '移动到下一采集文章
                End If
            ElseIf CollectionType = 1 And CollectionNum <> "" Then
                If ListNum > PE_CLng(CollectionNum) Then
                    ArticleList = ""      '采集列表完成
                    '生成Html
                    Call GetArrOfCreateHTML
                    ItemSucceedNum2 = 0   '统计数采集项目都清0为下一个采集项目准备
                Else
                    Arr_i = Arr_i + 1 '移动到下一采集文章
                End If
            Else
                Arr_i = Arr_i + 1 '移动到下一采集文章
            End If
            If Arr_i > UBound(NewsArray) Then
                Arr_i = 0
                ListNum = ListNum + 1
                ArticleList = ""      '采集列表完成
            End If
        Else
            For Arr_i = 0 To UBound(NewsArray)
                FoundErr = False
                Call StartCollection  '执行核心采集过程

                '采集数处理 当前列表采集完成 or 指定数完成
                If CollectionType = 0 And CollectionNum <> "" Then
                    If CLng(ItemSucceedNum2) >= CLng(CollectionNum) Then
                        ListNum = ListNum + 1
                        ArticleList = ""
                        '生成Html
                        Call GetArrOfCreateHTML
                        ItemSucceedNum2 = 0 '统计数采集项目都清0为下一个采集项目准备
                        Exit For
                    End If
                ElseIf PE_CLng(CollectionType) = 1 And CollectionNum <> "" Then
                    If ListNum = PE_CLng(CollectionNum) And Arr_i >= UBound(NewsArray) Then
                        ListNum = ListNum + 1
                        ArticleList = ""      '采集列表完成
                        '生成Html
                        Call GetArrOfCreateHTML
                        ItemSucceedNum2 = 0   '统计数采集项目都清0为下一个采集项目准备
                        Exit For
                    End If
                End If
                If Arr_i >= UBound(NewsArray) Then
                    Arr_i = 0
                    ListNum = ListNum + 1
                    ArticleList = ""      '采集列表完成
                    Exit For
                End If
            Next
        End If
    End If

    Response.Write "<br>"
    Response.Write "<table width=""100%"" border=""0"" align=""center"" cellpadding=""0"" cellspacing=""1"" class=""border"" >" & vbCrLf
    Response.Write "  <tr>"
    Response.Write "   <td height=""22"" align=""left"" class=""tdbg"">"
    Response.Write "&nbsp;&nbsp;数据整理中," & TimeNum & " 秒后继续......" & TimeNum & "秒后如果还没反应请点击 <a href='Admin_Collection.asp?Action=Start&ItemNum=" & ItemNum & "&ListNum=" & ListNum & "&Arr_i=" & Arr_i & "&CollecNewsA=" & CollecNewsA & "&CollecNewsi=" & CollecNewsi & "&CollecNewsj=" & CollecNewsj & "&IsTitle=" & Trim(Request("IsTitle")) & "&IsLink=" & Trim(Request("IsLink")) & "&ItemIDtemp=" & ItemIDtemp & "&rnd_temp=" & rnd_temp & "&ArticleList=" & ArticleList & "&ItemSucceedNum=" & ItemSucceedNum & "&ItemSucceedNum2=" & ItemSucceedNum2 & "&ImagesNumAll=" & ImagesNumAll & "&ItemID=" & ItemIDStr & "&CollecType=" & CollecType & "&CollecTest=" & Trim(Request("CollecTest")) & "&Content_view=" & Trim(Request("Content_view")) & "&ListPaingNext=" & ListPaingNext & "&CollectionCreateHTML=" & CollectionCreateHTML & "&Timing_AreaCollection=" & Timing_AreaCollection & "&TimingCreate=" & TimingCreate & "'><font color=red>这里</font></a> 继续<br>"
    Response.Write "   <meta http-equiv=""refresh"" content=" & TimeNum & ";url=""Admin_Collection.asp?Action=Start&ItemNum=" & ItemNum & "&ListNum=" & ListNum & "&Arr_i=" & Arr_i & "&CollecNewsA=" & CollecNewsA & "&CollecNewsi=" & CollecNewsi & "&CollecNewsj=" & CollecNewsj & "&IsTitle=" & Trim(Request("IsTitle")) & "&IsLink=" & Trim(Request("IsLink")) & "&ItemIDtemp=" & ItemIDtemp & "&rnd_temp=" & rnd_temp & "&ArticleList=" & ArticleList & "&ItemSucceedNum=" & ItemSucceedNum & "&ItemSucceedNum2=" & ItemSucceedNum2 & "&ImagesNumAll=" & ImagesNumAll & "&ItemID=" & ItemIDStr & "&CollecType=" & CollecType & "&CollecTest=" & Trim(Request("CollecTest")) & "&Content_view=" & Trim(Request("Content_view")) & "&ListPaingNext=" & ListPaingNext & "&CollectionCreateHTML=" & CollectionCreateHTML & "&Timing_AreaCollection=" & Timing_AreaCollection & "&TimingCreate=" & TimingCreate & """>"
    Response.Write "&nbsp;&nbsp;执行时间:" & CStr(FormatNumber((Timer() - StartTime) * 1000, 2)) & " 毫秒"
    Response.Write "    </td>"
    Response.Write "  </tr>"
    Response.Write "  <tr> " & vbCrLf
    Response.Write "    <td height=""22""  class=""tdbg"" align=""left"">&nbsp;&nbsp;采集需要一定的时间,请耐心等待,如果网站出现暂时无法访问的情况这是正常的,采集过程正常结束后即可恢复。" & vbCrLf
    Response.Write "      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type=""button""  name=""Stop""  value=""停止采集""  onCLICK=""location.href='Admin_Collection.asp?Action=StopCollection&rnd_temp=" & rnd_temp & "&CollecNewsi=" & CollecNewsi & "&CollecNewsj=" & CollecNewsj & "&IsTitle=" & Trim(Request("IsTitle")) & "&IsLink=" & Trim(Request("IsLink")) & "&ItemSucceedNum2=" & ItemSucceedNum2 & "&ImagesNumAll=" & ImagesNumAll & "&CollecType=" & CollecType & "&CollecTest=" & Trim(Request("CollecTest")) & "&Content_view=" & Trim(Request("Content_view")) & "&CollectionCreateHTML=" & CollectionCreateHTML & "&ChannelID=" & ChannelID & "&ClassID=" & ClassID & "&SpecialID=" & SpecialID & "&CreateImmediate=" & CreateImmediate & "&UseCreateHTML=" & UseCreateHTML & "&TimingCreate=" & TimingCreate & "'"">" & vbCrLf
    Response.Write "    </td>" & vbCrLf
    Response.Write "  </tr>" & vbCrLf
    Response.Write "</table>" & vbCrLf
End Sub
'==================================================
'过程名:StartCollection
'作  用:开始采集
'参  数:无
'==================================================
Sub StartCollection()

    '………………………………………………
    '内容页变量初始化
    CollecNewsA = CollecNewsA + 1 '已经采集数(包含成功和失败)
    DefaultPicUrl = ""   '要采集的绝对路径
    ImagesNum = 0        '本次采集采集到的图片数量
    NewsCode = ""        '获得内容也的源代码
    Title = ""           '标题
    Content = ""         '正文
    Author = ""          '作者
    CopyFrom = ""        '来源
    Key = ""             '关键字

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -