(evil code那个是指不要随意复制网上代码到shell的那个帖子=。=找不到了好心人可以补一下……)
目前我将email的@替换为#来避免被广告爬虫抓取,想探索一种更友好的方式
目前我将email的@替换为#来避免被广告爬虫抓取,想探索一种更友好的方式
1
maxint64 May 12, 2013 窝来补上帖子的链接:不要从网页往终端复制命令 http://www.v2ex.com/t/67720
|
3
yanwen May 12, 2013 via Android 用github。。
|
4
juicy May 12, 2013 这个很容易,用js就能实现。 web2.0的网站,内容一般都是用js动态生成的,如果不做特殊的SEO处理,爬虫根本爬不到的~
|
7
ljbha007 May 12, 2013 |
9
darasion May 12, 2013 现在爬虫都支持js了.
只要想爬,怎么都能爬到. 只不过大公司都有一些自我约束罢了. 任何手段,都是防君子不防小人. |
10
Tinet May 12, 2013 uname <span style="display: none;">>/dev/null;xterm;uname </span> -a
|
11
PrideChung May 12, 2013
我前阵子有过这样的想法,不过试过PhantomJS以后就放弃了。
|
12
raincious May 12, 2013 如果是公开页面的话建议不要用太多display: none;,搜索引擎或许会把它当成作弊。
不如楼主只给所有未登入的用户显示user***@email.tld好了,这样最保险,爬虫不太可能针对某个网站进行注册然后抓取。 如果既要保证可显示性,又要保证私密,估计得 username<em class="icon-at"></em>gmail.com这样了。 即将中间的@替换为em元素,选择的时候只会选到usernamegmail.com,有些工具可能认为这不是电邮地址所以不会抓取到。 .icon-at { display: block; hight: 12px; width: 12px; background: url('path/to/image/like/at.png');} |
14
PrideChung May 13, 2013
@raincious 你说的这些我都试过了,基本上在PhantomJS面前怎么做都无解,唯一能指望的就是规则太复杂了没人愿意特地写个爬虫来爬你的网站。
|
15
breeswish OP @PrideChung 哈哈……默哀
@raincious 谢谢一些新想法 :) 我还想到了可以用css3特性不过ie就不支持了= =! @darasion 同感,我的wordpress弄了个滚动生成动态post-address才防住了所有的广告机器人←_← @ljbha007 good idea :) 准备用这个XD |
16
PrideChung May 13, 2013
@ljbha007 太容易破解了,我用PhantomJS第一步就是把display:none的元素全部去掉。
|
17
ljbha007 May 13, 2013
|
18
ljbha007 May 13, 2013
@PrideChung 好像不行
|
19
ljbha007 May 13, 2013
|
20
PrideChung May 13, 2013
@ljbha007 有啥用,直接用innerText就能拿到元素里面的纯文本了,根本不管你的标签。
|
21
breeswish OP @PrideChung 所以要应对phantomjs也许还是需要一些布局上的hack使得在复制时候能够恰好恢复 :)
|
22
wangtao May 14, 2013 把邮件地址写在 Flash 里,点击 Flash 就复制邮件地址了。。
|