用Phantomjs抓取网页链接

发布于 2021-11-20 10:01:23 字数 389 浏览 751 评论 6

@bobshi 你好,想跟你请教个问题:

我现在要抓取一个网页a标签name属性为dttl的所有href的数据,我是以下面这两种方式做的,

var list = document.getElementsByName('dttl');
var list = document.querySelectorAll('a[name="dttl"]');

这两种方式得到的数据大小没问题,但里面只有第一个对象是有数据的,其它对象都是null,所以请教一下,是不是这样来获取数据,谢谢!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

一笔一画续写前缘 2021-11-25 02:23:08

一个朋友帮我解决了这个问题,加了onConsoleMessage这个方法就好了!

緦唸λ蓇 2021-11-25 02:04:44

回复
加入这个方法只是能输出值吗?那程序中能正常获取到这个值吗

风透绣罗衣 2021-11-25 00:39:34

回复
实际上值是已经获取到了,只是显示不出来,加了这个方法之后就可以显示出来了!

如此安好 2021-11-24 22:54:45

@赵小龙 ……

英雄似剑 2021-11-24 13:21:27

我也觉得没错,这段代码是我在html里测试过的,浏览器刷新也可以遍历出数组的数据,但拿到phantomjs里却不是这样,很疑惑!

哑剧 2021-11-23 19:43:55

这样写的话,倒是没错,得到的是一个节点a的数组,像你说的只有第一个有数据,结合页面上的节点你再调试一下,在浏览器的dev tool里写的js代码在phantomjs里几乎是可以直接使用的,你可以把抓取的内容打印出来,再慢慢的调试。另外,你可以引入第三方的类库,比如jquery,操作dom会更方便些吧

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文