不通过后端的服务器,相当于用户每次访问网页,在前端爬取数据后,再上传到后端,每次使用用户的 ip 。
当然需要告之用户,类似做一个更新最新数据的按钮,用户自己点击,然后再爬取数据。

相关文章

25 thoughts on “如何纯前端实现爬虫

  1. 百度爬虫里面有个 自动提交的 js 功能,你可以参考下他怎么做的。
    他的流程就是用户访问了该网页,然后就把网址提交了。后续爬虫定时再来爬。

  2. 浏览器有跨域的限制,不会让你从这个页面发送 http 请求给其他页面的,除非人家开了针对你的 CORS (或者*),或者你 get 到了他的 jsonp 接口(但是没人会给 html 页面开 jsonp 吧)。所以理论上不行,除非你说的前端不是 web,而是其他客户端。

  3. 最简单的办法是油猴脚本,比较折中的办法是浏览器插件,这些都能保证爬取的过程都是用户行为,单纯的网页肯定还得你提供服务,严格来说就不能算纯前端了。

  4. 需要先定义一下 『纯前端』指的是什么。

    是说你自己搭建一个前端页面,然后去爬其它网站?

    还是说你在其它人的页面上执行一段前端脚本(类似油猴、浏览器扩展),来实现对其它网站的抓取?

  5. 使用浏览器扩展,是可以的。

    一些比价插件,就会通过插件扩展机制,去扫描当前页面的 document,根据不同的网站 url,执行不同的采集策略。

    采集到的数据,会通过 http 传送到后端,既能让用户帮助自己辅助数据抓取,也能满足用户更精准的比价需求 [爬当前页的商品基本文案,可以比价推荐类似的产品] 。

  6. @azh7138m 对,除了省钱,主要是采集的东西及时性比较强,页面比较多,如果可以实现的话,用户看得都是最新的

  7. 先搞清楚这个爬虫是你自己用 还是给用户用

    要是你自己用咋也好说,浏览器插件 扩展 脚本都行

    如果是给用户用,那么浏览器就限制死了,无法发起跨域操作,你总不能让用户去安装 扩展 脚本这些吧?

  8. @netnr 可是,加代理了走的不就是代理的 ip 了吗,楼主想用户的 ip 。同源策略,跨域,看来楼主想多了

发表评论

电子邮件地址不会被公开。 必填项已用*标注