解决java使用selenium+chrome解析页面链接时发现只能得到链接的文本,使用element.getAttribute()获取链接等其它属性时报错(错误指示element.getAttribute()处空指针)。
问题描述
在java中使用selenium+Chrome实现爬虫程序时,对爬取到的链接进行解析,在本地Windows系统下解析完全没有问题,但是导出jar文件后,放在centos系统下运行,可以解析到链接的文本,但是使用ement.getAttribute()获取链接等其它属性时报错,不管是什么属性,都提示ement.getAttribute()处NullPointerException的空指针错误。
原因分析:
在本地Windows系统下解析完全没有问,导出jar文件后放在centos系统下运行,我一开始猜测原因主要有两种:
1)系统环境不一样,代码或者jar包有兼容性问题
2)项目导出jar包后,使用到的第三方依赖jar包没有正确导出
根据这两个方向,我首先在centos的电脑上也安装了eclipse,直接运行代码,发现也报错。那
当使用selenium+Chrome在Windows系统下开发的爬虫程序被打包成jar并运行在CentOS系统时,element.getAttribute()出现NullPointerException。问题源于在CentOS上运行时缺少selenium-server-4.0.0-alpha-4.jar的依赖。通过将该jar包添加到项目构建路径,然后重新打包和运行,解决了此问题。
订阅专栏 解锁全文
1058

被折叠的 条评论
为什么被折叠?



