|
2#
楼主 |
发表于 2012-2-28 23:42:42
|
只看该作者
本帖最后由 wower1985 于 2012-3-15 20:49 编辑
回复 1# wower1985
算了,没人鸟,全部内容自己想办法解决了。附上全部代码。
'使用前最好关闭浏览器,先开QTP
Set IEBrowser = CreateObject("InternetExplorer.Application")
IEBrowser.Visible = True
IEBrowser.Navigate "http://zx.taobao.com/detail.htm?id=11204926" '导航到的URL,换别的地址就行
'换别的地址要注意该这里的Browse title 名字和page title名字,只统计你们的模版市场不需要改
set myPage=Browser("micclass:=Browser","title:=.*模板详情 - 店铺装修市场 – 淘宝网").Page("micclass:=Page","title:=.*模板详情 - 店铺装修市场 – 淘宝网")
'等待页面加载
myPage.Sync
'点击成交记录
myPage.WebElement("micclass:=WebElement","innertext:=成交记录").Click
'获得多少页记录
pageText=myPage.WebElement("micclass:=WebElement","innertext:=.*共.*条 / 共 .* 页").GetROProperty("innertext")
startIndex=InStr(pageText,"/ 共")+3
endIndex=InStr(pageText,"页")-1
l=endIndex-startIndex
pageStr=trim (mid(pageText,startIndex,l))
pageNum=Cint(pageStr)
'msgbox pageNum
myPage.WebTable("micclass:=WebTable","html tag:=TABLE","column names:=买家;出价;成交时间;状态").Click
'开始写入到Excel,先创建excel文件,地址放对。
set xlsobj=createobject("excel.application") '创建excel对象
set xlsbook=xlsobj.Workbooks.Open("C:\Users\Administrator\Desktop\book1.xlsx") '打开指定的excel文件
Set xlssheet=xlsbook.Sheets("sheet1") '设置操作sheet对象,可使用index-从1开始
'设置表头
xlssheet.cells(1,1)="买家"
xlssheet.cells(1,2)="出价"
xlssheet.cells(1,3)="成交时间"
xlssheet.cells(1,4)="状态"
'读取内容部分
k=0
j=0
Do while j< pageNum
For i=1 to 15
'判断是否有值
a= myPage.WebTable("micclass:=WebTable","html tag:=TABLE","column names:=买家;出价;成交时间;状态").GetCellData(i+1,1)
If a="ERROR: The specified cell does not exist." Then
Exit for
Exit Do
End If
'a= myPage.WebTable("micclass:=WebTable","html tag:=TABLE","column names:=买家;出价;成交时间;状态").GetCellData(i+1,1)
b= myPage.WebTable("micclass:=WebTable","html tag:=TABLE","column names:=买家;出价;成交时间;状态").GetCellData(i+1,2)
c= myPage.WebTable("micclass:=WebTable","html tag:=TABLE","column names:=买家;出价;成交时间;状态").GetCellData(i+1,3)
d= myPage.WebTable("micclass:=WebTable","html tag:=TABLE","column names:=买家;出价;成交时间;状态").GetCellData(i+1,4)
xlssheet.cells(i+k+1,1)=a
xlssheet.cells(i+k+1,2)=b
xlssheet.cells(i+k+1,3)=c
xlssheet.cells(i+k+1,4)=d
Next
k=k+15
j=j+1
If j=pageNum Then
Exit Do
End If
myPage.Link("micclass:=Link","name:=下一页").Click
Loop
'关闭Excel
xlsbook.Save
xlsbook.Close
xlsobj.Quit
set xlssheet=nothing
set xlsbook=nothing
set xlsobj=nothing |
|