Nutch找不到link这种网站
Nutch cannot find out link for this kind of website
我是网络爬虫的初学者,我尝试过静态网络的crawler4j。
现在,我想尝试通过 Nutch+hbase+solr 抓取这个网站 (https://weedmaps.com/brands),
但我什至不能更进一步。
我试过其他网站,例如http://sports.sina.com.cn,
我实际上可以将信息索引到solr。
我想知道 https://weedmaps.com/brands,源页面没有明确的外链,我该如何抓取它?
任何人都可以推荐工具或文章吗?或解释 nutch 不起作用的原因?
非常感谢。
问题是 https://weedmaps.com/brands 这个页面是使用 AngularJS 构建的,这意味着它基本上是使用 Javascript 呈现的,而实际存在的 HTML 很差。如果您只尝试使用 curl,您可以看到源代码。默认情况下,Nutch 仅依赖服务器发送的 HTML 并且不进行任何客户端处理(如解释 js 代码)。
您可以查看 https://github.com/apache/nutch/tree/master/src/plugin/protocol-selenium 并配置该协议。在这种情况下,Nutch 将通过 Selenium(能够解释 javascript)传输 HTML,然后它将结束 HTML 发送到正常的 Nutch 管道。
我是网络爬虫的初学者,我尝试过静态网络的crawler4j。
现在,我想尝试通过 Nutch+hbase+solr 抓取这个网站 (https://weedmaps.com/brands), 但我什至不能更进一步。
我试过其他网站,例如http://sports.sina.com.cn, 我实际上可以将信息索引到solr。
我想知道 https://weedmaps.com/brands,源页面没有明确的外链,我该如何抓取它? 任何人都可以推荐工具或文章吗?或解释 nutch 不起作用的原因?
非常感谢。
问题是 https://weedmaps.com/brands 这个页面是使用 AngularJS 构建的,这意味着它基本上是使用 Javascript 呈现的,而实际存在的 HTML 很差。如果您只尝试使用 curl,您可以看到源代码。默认情况下,Nutch 仅依赖服务器发送的 HTML 并且不进行任何客户端处理(如解释 js 代码)。
您可以查看 https://github.com/apache/nutch/tree/master/src/plugin/protocol-selenium 并配置该协议。在这种情况下,Nutch 将通过 Selenium(能够解释 javascript)传输 HTML,然后它将结束 HTML 发送到正常的 Nutch 管道。