久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Excel 不懂html也來學(xué)網(wǎng)抓(xmlhttp/winhttp fiddler)-ExcelVBA程序開發(fā)-ExcelHome技術(shù)論壇 - 手機版 - Powered by Discuz!

 xtpeak 2015-06-05
學(xué)網(wǎng)抓對vba的要求:
1,、了解對象及對象屬性方法的基本概念,;
2、熟練使用循環(huán),、判斷及vba數(shù)組,;
3、掌握一種以上提取文本的方法,,可以在各種有規(guī)律的文本里提取所需數(shù)據(jù),;
4、會調(diào)試代碼,,會用立即窗口,、本地窗口。(很重要,,請務(wù)必學(xué)會)
5,、有錄制宏的經(jīng)驗。

可以這樣說,只要你具備上述vba知識,,再對網(wǎng)抓有點興趣,,有點耐心,那你就能學(xué)會網(wǎng)抓,。

我本人開始用xmlhttp和fiddler的時候,,對html和javascript是一竅不通的,對get,、post也不懂,,全是依樣畫葫蘆。畫成功后,,有了興趣,才慢慢去尋找它的原理和相關(guān)知識去學(xué)習(xí),。我想我這樣的學(xué)習(xí)方法或許可以給一些像我一樣的小白一個借鑒,。但愿沒有誤導(dǎo)新人才好。

學(xué)習(xí)html強力推薦此網(wǎng)站:http://www.w3school.com.cn/ ,絕對權(quán)威

==================================================
如果發(fā)覺樓主有寫錯的地方,,或是用錯術(shù)語,,或是概念模糊,或是運行出錯,、運行效果與樓主不同,,或是有看不懂、不理解的地方,,請大家及時提出來,。
希望在大家的幫助和建議下完善本帖,讓不會網(wǎng)抓的朋友由此貼學(xué)會寫一些基礎(chǔ)的網(wǎng)抓代碼,,同時感受到網(wǎng)抓的樂趣,。

謝謝大家!



補充內(nèi)容 (2014-11-5 19:37):
交流QQ群:310731499
分享到新浪微博
本帖最后由 wcymiss 于 2014-10-27 13:07 編輯

處理table
table數(shù)據(jù)處理,,除了之前的兩種通用方法外,,還有以下幾種方法:

1、html法
   將table數(shù)據(jù)寫入htmldocument對象,,然后循環(huán)取出表格的各個元素,。
   優(yōu)點:可以利用htmldocument對象整理表格。
   缺點:需要學(xué)習(xí)html相關(guān)知識,。
   以17樓作業(yè)二為例:
  1. Sub Main()
  2.     Dim strText As String
  3.     Dim arrData(1 To 1000, 1 To 3)
  4.     Dim i As Long, j As Long
  5.     Dim TR As Object, TD As Object
  6.    
  7.     With CreateObject('MSXML2.XMLHTTP')
  8.         .Open 'POST', 'http://www./Template/WebService1.asmx/Present3DList', False
  9.         .setRequestHeader 'Content-Type', 'application/json'
  10.         .Send '{pageindex:'1',lottory:'TC7XCData_jiangS',pl3:'',name:'江蘇七星彩',isgp: '0'}'
  11.         strText = Split(JSEval(.responsetext), '<script')(0) '本例的script運行會提示錯誤,,所以去除這部分script代碼
  12.     End With
  13.    
  14.     With CreateObject('htmlfile')
  15.         .write strText
  16.         i = 0
  17.         For Each TR In .all.tags('table')(2).Rows
  18.             i = i + 1
  19.             j = 0
  20.             For Each TD In TR.Cells
  21.                 j = j + 1
  22.                 arrData(i, j) = TD.innerText
  23.             Next
  24.         Next
  25.     End With
  26.    
  27.     Set TR = Nothing
  28.     Set TD = Nothing
  29.     Cells.Clear
  30.     Range('C:C').NumberFormat = '@' '設(shè)置文本格式以顯示數(shù)字前面的0
  31.     Range('a1').Resize(i, 3).Value = arrData
  32. End Sub

  33. Function JSEval(s As String) As String
  34.     With CreateObject('MSScriptControl.ScriptControl')
  35.         .Language = 'javascript'
  36.         JSEval = .Eval(s)
  37.     End With
  38. End Function
2、QueryTable法:
   這個是excel自帶的網(wǎng)抓利器,。個人覺得它最大的優(yōu)勢就是處理table很方便,。
   優(yōu)點:處理table方便,代碼簡短,。
   缺點:會產(chǎn)生定義名稱,。多頁循環(huán)時每頁都會產(chǎn)生行字段名稱,,需要后續(xù)處理刪除。
   仍以作業(yè)一的第1題為例:
  1. Sub Main()
  2.     Cells.Delete
  3.     With ActiveSheet.QueryTables.Add('url;http://data.bank.hexun.com/lccp/jrxp.aspx', Range('a1'))
  4.         .WebFormatting = xlWebFormattingNone '不包含格式
  5.         .WebSelectionType = xlSpecifiedTables '指定table模式
  6.         .WebTables = '2' '第2張table
  7.         .Refresh False
  8.     End With
  9. End Sub
代碼相當(dāng)簡短,。


3,、復(fù)制粘貼法:
   table部分的文字可以直接復(fù)制到單元格內(nèi),且保留數(shù)據(jù)原格式,。
   優(yōu)點:只需取出table部分,,不需分析數(shù)據(jù)內(nèi)部結(jié)構(gòu)。代碼編寫簡便,。
   缺點:有時格式反而是累贅,。
  1. Sub Main()
  2.     Dim strText As String
  3.     With CreateObject('MSXML2.XMLHTTP')
  4.         .Open 'GET', 'http://data.bank.hexun.com/lccp/jrxp.aspx', False
  5.         .Send
  6.         strText = .responsetext
  7.     End With
  8.     strText = '<table' & Split(Split(strText, '<table')(2), '</table>')(0) & '</table>'
  9.     CopyToClipbox strText
  10.     Cells.Clear
  11.     Range('a1').Select
  12.     ActiveSheet.Paste
  13. End Sub

  14. Sub CopyToClipbox(strText As String)
  15.     '文本拷貝到剪貼板
  16.     With CreateObject('new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}')
  17.         .SetText strText
  18.         .PutInClipboard
  19.     End With
  20. End Sub

      本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報,。
      轉(zhuǎn)藏 分享 獻(xiàn)花(0

      0條評論

      發(fā)表

      請遵守用戶 評論公約

      類似文章 更多