黑色de郁金香 发表于 2016-8-16 00:31:29

RMB30求大神帮忙抓取网页数据

这个网址我只能一次抓取到50期数据,我想一次抓取到200期数据,但不知道如何弄,总是定位不到url,请大神不吝赐教,事成之后支付宝直接转账30!
http://chart.ydniu.com/trend/k3bj/

网页右上角有期数选择,但我不知道该如何弄

ysping 发表于 2016-8-16 08:34:41

浏览器是IE吗?

1361739590 发表于 2016-8-16 09:32:57

公司打不开,不能及时帮忙了

1361739590 发表于 2016-8-16 09:36:59

把这段的网页源码贴一下

nmgwddj 发表于 2016-8-16 09:39:32

本帖最后由 nmgwddj 于 2016-8-16 10:19 编辑

回复 1# 黑色de郁金香

这是一个时时获取数据的页面,点击 200期 按钮后会发送一个 POST 请求从后台拿数据到前台展示,有两种方法。

一种发 POST 请求,直接取结果,比较麻烦(对我来说)。
另一种是模拟点击 200期 按钮,再从页面上取数据,相对简单(参考下面代码)。


_IENavigate($oIE, "http://chart.ydniu.com/trend/k3bj/", 0)

Sleep(2000)

; 获取 id 为 filters 的 dom
Local $domParent = _IEGetObjById($oIE, 'filters')
; 得到该元素下面的所有子元素
Local $childrenNodes = $domParent.childNodes

; 遍历子元素判断哪个是 200
For $child In $childrenNodes
        If $child.getAttribute('value') == 200 Then
                ; 模拟点击 200 期按钮
                $child.click()
        EndIf
Next

; 等2秒
Sleep(2000)

; 按你原来获取 50 的方法再获取就可以了。


直接 POST 请求数据


$sPostData = 'method=GetTbodyHtml&type=fbzs&index=2'
$oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1")
$oHTTP.open('POST', 'http://chart.ydniu.com/Trend/k3bj.aspx?', False)
$oHTTP.setRequestHeader('Content-Type','application/x-www-form-urlencoded')
$oHTTP.Send($sPostData)
$Respond = BinaryToString($oHTTP.ResponseBody, 1)

FileWriteLine('result.txt', $Respond)

ysping 发表于 2016-8-16 14:04:19

回复 5# nmgwddj


    请问firefox中如何操作table对象?

nmgwddj 发表于 2016-8-16 15:59:53

回复 6# ysping


    IE、Firefox、Chrome,都遵循 W3C 大标准,使用常规 JavaScript 方法均可以操作。
    参考 :
    http://www.runoob.com/htmldom/htmldom-tutorial.html
    http://www.runoob.com/js/js-tutorial.html

ysping 发表于 2016-8-16 16:17:07

回复 7# nmgwddj


    没学过js{:face (229):}

ysping 发表于 2016-8-16 16:17:38

能举个例子吗?

nmgwddj 发表于 2016-8-16 17:28:04

回复 9# ysping


    http://www.multisilicon.com/blog/a34212751.html
    这个属于 AU3 的扩充知识了,下一套 JavaScript 的视频,花一周的时间好好学习一下,学完你会发现惊喜很多,一定不会白费这些学些的时间。

ysping 发表于 2016-8-17 09:25:16

回复 10# nmgwddj

好的,找时间学习一下JS,有没有推荐的比较好的视频教程?
有AU3中使用JS的例子吗?

1361739590 发表于 2016-8-17 09:32:08

回复 7# nmgwddj


    有用过IE11改变cookies路径 多帐号登入么?

nmgwddj 发表于 2016-8-17 11:14:17

回复 12# 1361739590


    没研究过。

nmgwddj 发表于 2016-8-17 11:23:41

回复 11# ysping


    链接: http://pan.baidu.com/s/1c2sl5dQ 密码: 3v3s
    看完 20150807 之前(包含)的所有视频你就基本上对 DOM 控制游刃有余了,基本需求都可以实现。

ysping 发表于 2016-8-17 11:31:46

回复 14# nmgwddj


    谢谢了!
页: [1] 2
查看完整版本: RMB30求大神帮忙抓取网页数据