1
ericls 2017-01-21 08:01:34 +08:00 via iPhone 1
用错综复杂的 table 文字的顺序和 html 里面的顺序不一样
|
3
imn1 2017-01-21 08:15:19 +08:00
其实就一个理念,让人阅读容易,让机器阅读困难(或者经过机器后,让其他人阅读困难)
例如,全部标点换成图片 |
4
uucloud 2017-01-21 08:22:16 +08:00
每天随机改变一下 dom 结构和文字标签的属性名
|
5
sheldor 2017-01-21 08:35:23 +08:00 via iPhone
因为还要防止被人随意复制,所以个人认为无解
|
6
livelazily 2017-01-21 08:35:48 +08:00
@nikoo 每一行的文字都放到一个空白的不带额外属性的的 div 里,每行文字都是乱序, 加载完成后用 js 调整为正确的顺序
|
7
des 2017-01-21 08:40:06 +08:00 via Android
自定义字体,隔一段时间去换。
多种方式换着来。 总感觉会有人来打我😂 |
8
kchum 2017-01-21 08:43:03 +08:00 via iPad
还可以截图 OCR 啊,防不胜防
|
9
xuan880 2017-01-21 08:45:11 +08:00 via Android
现在盗版都是自动抓取,自动 OCR ,只要作品阅读量大就无解,除非是那种没人去的小站,盗版都没人盗。
|
10
nailuoGG 2017-01-21 08:47:52 +08:00
爬网站时碰到以下这些情况会比较想吐槽:
- 关键元素没有 class 、 id - 有位置随机的空 div - 全部 table 或全部用 div |
11
nailuoGG 2017-01-21 08:51:22 +08:00
记得有个方法是:网站载入前通过 js 进行运算,用算出来的 key 来获取正文。
主要思路是提高爬取成本,但是这个方法对有大量数据的站更有效。 |
12
yidinghe 2017-01-21 09:04:12 +08:00 via Android 1
用 canvas 写文字
|
13
Yourshell 2017-01-21 09:05:14 +08:00 via Android
让新手来写页面
|
14
gouchaoer 2017-01-21 09:16:04 +08:00 via Android 4
作为全职爬虫工程师,我表示上面的都不靠谱。。。。
第一,转化成图片是个很不错的方法, cpu 不是问题,你把图片缓存起来就 ok 了。。然而对 seo 和移动端不那么友好。。。。至于爬虫要 ocr ,这个也要付出相应的成本 第二,根据账户行为控制,如果注册用手机注册,那么封了一个爬虫账号后就等于封了一个手机,爬的成本立刻上升。然后由于市场上有几 kw 个黑市手机号,能搞到这些手机号注册的业余爬虫码农做不到。那么基于行为怎么搞呢?很简单,一个用户的翻页速度和跨作品阅读都是很好的特征,写一些代码就能判断出爬虫,封的时候要慢慢封,不要让人猜出你封的策略。。。。 当然了,我个人倾向第二个方案。。。。你如果想要 seo 的话,可以每段做成一个 html ,路径用 hash ,让人猜不出路径规则无法遍历,这样搜索引擎又能索引,又能放爬虫。 |
15
scnace 2017-01-21 09:16:08 +08:00 via Android
放个 pdf 预览框不是稳得 1B !
|
16
gouchaoer 2017-01-21 09:29:24 +08:00 via Android
防那种业余的爬虫很简单,你页面动态生成的话。。。制作一些 html 模板,翻页啊文章正文的元素的 id 之类的经常变,但是由于你前端 js 已经和模板耦合很厉害了,如果 js 是由后端生成的可以这么做。。。这样可以防一些傻瓜爬虫
|
17
loading 2017-01-21 09:41:56 +08:00 via Android 1
用 js 过去编码过的数据,解密后用 canvs 显示
|
18
SpringHack 2017-01-21 10:07:02 +08:00 via Android
dom 结构和文字结构是反的
|
19
Suclogger 2017-01-21 10:25:55 +08:00
@gouchaoer 一名业余爬虫码农表示很容易找到一堆接收验证码的网站,还提供各种易用的 api ,费用约¥0.1 元一条
|
20
Aspx 2017-01-21 10:32:09 +08:00
现在 OCR 识别挺成熟了,转成图片这招意义也不大了。只能说现行法律的犯罪成本不高啊
|
21
bxb100 2017-01-21 12:06:06 +08:00 via Android
那你 seo 不得炸
|
22
b821025551b 2017-01-21 12:28:54 +08:00
正常文章里随机几个字加一次 span , span 之间加干扰 span 文字,加上隐藏属性的类;两种 span 的 class 随机换, js 加载不同的 css 。这样可以不影响用户浏览器正常的观看,但是爬虫会多很多干扰文字导致无法阅读。
|
23
gamexg 2017-01-21 13:00:33 +08:00
我见过最疯狂的是自定义字体,比如“啊”字字体显示为“吧”。
你拷贝出来的全部牛头不对马尾。 疯狂些可以动态生成字体,经常变换。 |
24
fffflyfish 2017-01-21 17:16:42 +08:00
参考百度文库的做法,直接转换成不可复制的 flash
|
25
elviscai 2017-01-21 18:25:01 +08:00
|
26
fantasts 2017-01-21 19:55:12 +08:00 via Android
百度知道使用的办法是替换一些文字为图片,起点使用 js 输出文字。
|