跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 现在爬虫对付脚本构造的网页还有什么方法,除了 selenium
未分類
18 4 月 2021

现在爬虫对付脚本构造的网页还有什么方法,除了 selenium

现在爬虫对付脚本构造的网页还有什么方法,除了 selenium

資深大佬 : imn1 8

前情,爬 baidu image,搜些图片玩玩 learning,发现不少轮子都废了,查了下页面源码,基本是 js 输出数据
之前就遇到 douban movie 用 js 构造问题,还好爬的东西不多,不急切,弄个 selenium 扔后台降低频率跑就是了

现在感觉越来越多网页 js 的作用很大,总以调起浏览器方式作用不大,也不好玩(没满足感

大佬有話說 (20)

  • 資深大佬 : 3dwelcome

    用自定义 cef 框架导出渲染后的 render dom tree 。
    首先要明确一点,一些网页用的是 js 返回数据,有些例如 twitter 是 websocket 构建页面,你不上 js 解析执行引擎,根本就没办法完整运行页面。
    你总要带一个 js 和 layout 引擎处理,要不然只有看着返回的 js 代码发呆了。

  • 資深大佬 : dsg001

    js 如果不加密,直接爬接口

    不好解密就上 headless chrome

  • 資深大佬 : EricXuu

    没满足感就自己造轮子

  • 資深大佬 : LeeReamond

    爬虫爬的好,牢饭吃到饱。没什么意义,现在框架写出的网站都是前端渲染前端路由,不跑无头你能拿到什么数据。然而只要跑无头基本就获得与正常用户一样的使用体验,所以比起爬虫我倒是更关心如何反爬。。

  • 主 資深大佬 : imn1

    @LeeReamond #4
    你理解的是商业数据,我只是想把重复劳动机器自动化
    例如要找不同类型车辆的图片,手动一天能存一千张已经算是忍耐力惊人了,但换成自动化工作,一万也不是问题,更何况这种搜图方式,图片都是分布在不同网站,引擎只是获取链接,并不会针对特定网站高频请求

  • 資深大佬 : coolair

    splash

  • 資深大佬 : LokiSharp

    直接抓接口爬,更简单了

  • 資深大佬 : omph

    微信公众号文章,即使有永久链接,都限爬了
    有什么简单的方法没?

  • 資深大佬 : XIU2

    我平时会给我经常访问的网站加上 自动无缝翻页(油猴脚本,提取下一页部分内容并插入到当前页面底部),结果接连遇到了好几个 JS 动态生成的网页,搞得我很难受。。。

    网上搜了一圈,基本上只能当场渲染获得成品内容,没有什么简单的方案。。。

  • 資深大佬 : rekulas

    @dsg001 headless 使用的也是 webdriver 和 selenium 一样

    路过打击一下主
    selenium 也并不万能,因为发现 webdriver 会向浏览器写入多项特征数据导致能够被识别,如果目标网站做了对应的防御,爬取难度会非常大,而且这些特征有些是无法移除或修改的,例如 navigator.webdriver,这点深受使用者吐槽,老外都骂 google 做了婊子还要立牌坊,不过 google 应该是为了保证网站的知情权吧

    已经有开发者发起挑战,宣称将基于 chromium 开发无法检测的 webdriver 浏览器

  • 資深大佬 : ysmood

    @rekulas 你可以挑战下 rod,看不能不能检测到是爬虫: https://go-rod.github.io/i18n/zh-CN/#/emulation?id=%e9%98%b2%e6%ad%a2%e6%9c%ba%e5%99%a8%e4%ba%ba%e6%a3%80%e6%b5%8b

    headless 和 webdriver 区别还是很大的: https://go-rod.github.io/i18n/zh-CN/#/why-rod?id=selenium

  • 資深大佬 : lqzhgood

    从 headless 的被防爬角度我提个思路~
    直接 chrome + 插件,就可以完全避开 webdriver 的特征了

  • 資深大佬 : yucongo

    playwright, 爬虫新利器

  • 資深大佬 : LeeReamond

    @ysmood 学到了一个好用的反爬方法,感谢

  • 資深大佬 : ysmood

    @yucongo 从性能和设计可以对比下 rod 和 playwright,这里有详细说明: https://go-rod.github.io/i18n/zh-CN/#/why-rod?id=puppeteer

  • 資深大佬 : omph

    @ysmood #15 rod 有没有命令行的版本?这样可以快速做一些小任务,无需 go 开发环境

  • 資深大佬 : ysmood

    @omph 有一个实验项目,我倒是很想指导一个开发者做相关的开发 https://github.com/go-rod/wayang

    我个人时间比较有限,欢迎有兴趣的同学加入,很早之前就开了 issue 了 https://github.com/go-rod/rod/issues/333

  • 主 資深大佬 : imn1

    谢各位,暂时用 PyQt5.QWebEngineView,效果可以接受

  • 資深大佬 : allanpk716

    @ysmood 刚用你这项目写了下爬虫,挺不错的,比之前用的其他 go 的库好用很多。

  • 資深大佬 : rekulas

    @ysmood 感谢大佬提供的 rod,以前试过挺好用的
    不过 rod 是基于 devtools ?如果是那仍然可以被检测到,要破解也没有上提到的那么容易,除非能够修改浏览器内核
    空了我会再测试一番

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具