Q&A(待完善)

{success} 在群内提问题。言简意赅。具体描述你所遇到的问题 + 合适的截图。


如何查看本次是否采集成功等信息重点

{info} 你是否遇到这样的问题?采集提示成功,数据桶没数据、不知道自己写的规则到底对不对

在点击采集按钮前,右键打开控制台 > 网络 > 点击采集 > 等待结果

调试信息会给到具体每条数据是否采集成功的详细信息,鼠友可以根据信息来判断

  • 常见错误
    • 文章在数据库已存在,滤重(滤重不区分规则,以详情页的url地址为准) // 有鼠友报告滤重不生效,仔细一看有可能是目标站重复了。同样的标题发两次,url地址不一样,胖鼠采集是不检测标题重复的
    • 内容错误: 是 title 或者 content 为空导致的。采集后入库这两个字段必须有值 // 一定要保证这两个字段有采集到的数据
    • 内容错误: 还有一冲情况。如果刚刚采集是正常的,过一会就发现内容错误、可能目标网站有防采集策略(当你批量采集时,速度较快,安全策略限制每分钟这个ip有多少次的请求等其他策略。超过了就办掉,给爬虫返回一下错误的html页面,所以取不到数据入库错误了)
    • 内容错误,如果debug正常,可能是目标站有拦截: 这个错误,一定要展开给你返回的调试信息,查看 title 字段 content 字段是否有数据,一般情况都是其中一个字段没有采集数据造成的。

网络超时/采集超时

  • 采集的时候提示超时错误,因为采集需要 请求目标网站服务器 解析数据 下载图片 这些工作都十分耗费时间。在 php.ini 中缺省的最长执行时间是 30 秒,这是由 php.ini 中的 max_execution_time 变量指定,超过了就自动中断,网络超时。
    1. 加长php最大超时时间 (不推荐设置太长)
    2. 超时后,再次重新点击采集,已采集数据会自动滤重(推荐哦)

数据重复问题

目前采集的版本,都会全局滤重+数据库唯一索引。无需担心数据重复问题(同url一定不会重复) 注 v1 旧版本无法强滤重

图片相关

请先确定没有设置图片不本地化的选项

采集回来的图片是目标站的一张默认图,不是真实的图片

请查看目标站详情页,右键查看网页源代码,搜索 <img 查看目标站图片真实属性是什么,胖鼠下载图片默认是取在配置中心设置的图片真实地址的值,默认是src属性值、目标站图片懒加载网站真实的图片路径可能在data-src或者origin-src或者其他属性中,请根据图片地址真实的属性来陪配置中心设置

{info} 简书为例 真实的图片地址是 data-original-src

采集后图片有两个重复的

这个问题很多鼠友遇到过,不是采集bug 而是源站就是两张图片,只不过源站隐藏了。大家肉眼看不到而已。上图是例子

为什么要这样呢?

知识点 noscript 标签 

介绍:"如果浏览器支持脚本,那么它不会显示出 noscript 元素中的文本。"

他是为了解决浏览器禁用 javascript, 但是又不想影响文章中图片的展示

解决方法标签过滤中增加 -noscript

这样基本可以解决大家遇到99%的图片问题。

如果非上述问题还是不行。可以在服务器使用命令 curl 图片地址、看看 http状态 是否返回200,数据返回正常。有可能目标站把你的服务器ip禁止了

{primary} Tips: F12查看源代码是已经动态加载过的网页源代码。 右键查看网页源代码是未动态加载的,是我们需要的

文章采集后图片是源站链接?

图片采集失败,就会使用源站链接,或者你设置了不本地化图片。就这两种情况

采集被屏蔽如何检测。

在服务器上执行curl命令

curl -I https://www.baidu.com
返回:
HTTP/1.1 200 OK // 200为http成功状态码
Accept-Ranges: bytes
Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
Connection: keep-alive
Content-Length: 277
Content-Type: text/html
Date: Sun, 17 Jan 2021 14:42:24 GMT
Etag: "575e1f59-115"
Last-Modified: Mon, 13 Jun 2016 02:50:01 GMT
Pragma: no-cache
Server: bfe/1.0.8.18
错误示范
curl -I https://www.baidu.com/aaaaa
HTTP/1.1 404 Not Found
Content-Type: text/html; charset=iso-8859-1
Date: Sun, 17 Jan 2021 14:45:06 GMT
Server: Apache

查看给你返回的状态码是否正常即可注意是服务器不是本机

插件无法照顾所有鼠友面对目标站情况,没有办法越过复杂的防采集策略。实在不行就换个网站吧

{info} 善用文档快捷键的 /切换导航栏 s搜索 t滚动屏幕顶部 b滚动屏幕底部