博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
记录一次爬虫报错:Message: Failed to decode response from marionette
阅读量:4564 次
发布时间:2019-06-08

本文共 634 字,大约阅读时间需要 2 分钟。

由于标题中的错误引发:

Message: Tried to run command without establishing a connection

解释:

先说一下我的爬虫架构,用的是firefox+selenium,上面的那个错误是因为浏览器退出之后,爬虫还要浏览器去执行一些命令,所以才报上面的错误,那第二个问题来了:

浏览器为什么会自动crash(崩溃)呢,一般来说都是因为资源不够用了,什么资源呢?内存资源,浏览器是很占用的内存,而且有的爬虫为了加快爬虫速度会让浏览器做缓存,

这样导致浏览器占用的内存更多

解决办法:

1.根据爬虫占用的资源情况,合适的增加内存

2.降低爬虫的速度,让浏览器有点空闲,特别是在启动多个浏览器的爬虫中

 

---------------------------------2019-04-24更新--------------------------------

上面的说法并没有错,但是还是有些情况没有考虑进去,其实浏览器会崩溃的主要原因是因为浏览器内存泄露,也就是说,由于浏览器默认是开启缓存功能的,

这样随着爬虫的运行,浏览器的缓存就会越来越大,最终一定会导致浏览器内存泄露(前提是浏览器不重启的爬虫,如果浏览器隔一段时间就重启,不会有这个问题),

至于说怎么在爬虫中禁用浏览器缓存,这个在我另一篇博客中有提到,就不说了

转载于:https://www.cnblogs.com/gunduzi/p/10600152.html

你可能感兴趣的文章
JAVA基础-JDBC(一)
查看>>
js中for和while运行速度比较
查看>>
简单理解什么是递归(阶乘演示)
查看>>
http协议
查看>>
js倒计时,页面刷新时,不会从头计时
查看>>
洛谷1156垃圾陷阱
查看>>
python ==》 递归
查看>>
简单网络请求封装
查看>>
django —— MVT模型
查看>>
oracle 静默安装
查看>>
Python3基础(2)模块、数据类型及运算、进制、列表、元组、字符串操作、字典...
查看>>
服务器上centos 7 配置静态IP
查看>>
C# unsafe模式内存操作深入探索
查看>>
Redis拾遗(一)
查看>>
js字符串转换为Json对象的三种写法
查看>>
Is it possible to display icons in a PopupMenu?
查看>>
制作导航条
查看>>
iOS中的内存管理1
查看>>
23种设计模式全解析
查看>>
Learning Python 008 正则表达式-003 sub()方法
查看>>