自建搜索引擎,对木工网进行数据归档。
www.zuojiaju.com现状
我最近打算做一台cnc,准备系统的学一下cnc知识。想到早年在www.zuojiaju.com收藏了几个cnc相关的帖子。
当我准备打开网站的时候发现简直是个噩梦,
- 域名(www.zuojiaju.com)不能访问了;
- 搜索一下,原来换成www.diy.cc这个域名,打开一看网站换成了收费的问答系统,再点进去一看,全是Discuz的mysql报错信息;
- 又找了一圈,论坛到了mgm1.diy.cc这个子域名下,终于看到点影子了,可是所有内容都不能查看,我可是交了钱的会员啊;
- 换手机APP吧,APP说是到期了不能使用了,8月的时候说开始恢复,至今是12月,还是无法使用
app功能正在修复 老李 2023-8-11
,app现在也在搞备案制,这下就更难了。
目前我找到唯一能访问的方法是移动端的web,勉强能用,但页面打开速度奇慢,基本上在45秒左右。我以为是我网络问题,17ce看了一下,全国都是4-10秒。
看来是彻底躺平了
老李不易
目前这个网络环境,做论坛的确很难。据说之前被注销过域名备案,搞收费制又被人举报个人网站涉嫌经营。李先生能坚持这么多年,确实是不容易。
但是:
难归难啊,既然还在做,就说明能做啊;既然能做,就应该把他做好啊;
如果不能再做了,可以把他交给有能力的人继续做下去啊。网站虽然是个人做的,但是数据可是大家的啊。何必这样搞的半死不活的呢。
论坛的新帖,新回复的数量都很少,帖子的click很少。
等数据抓完了,可以做一个按周期分析的统计数据图表。看看到底是从什么时候开始出了问题的。
收费的错?
据说这一切的错都是从收费开始的。
又说,收费是为了防止内容被监管读取而被处罚,用app就不会被监管识别。看来他们是不了解云厂商的内容防火墙机制啊。
我觉得网站收费没有问题,用收费负担成本,提供更好的体验,这是良性循环。我是第一时间就交钱成了收费会员。
但如果出发点是想通过论坛收费来赚钱,我觉得就大错特错了。论坛收费制,除了成论人坛,其他寥寥无几。想赚钱,别的变现方式有很多啊。为什么要走这个死胡同呢。
成本多少
我简单看了一下帖子数量大概不到100万,自增id数目前是99.9万,回复数量估计不到1千万,用户数20多万,PV很少。这个体量Discuz用一台2c4g足够了。
附件(主要是图片)的存储量相对会大一些的,出口走的是两个CDN,一个是金山,另一个是不知名厂商,有点乱。
这个体量服务器成本+CDN流量,一个月几百元是足够的。这哪里需要搞什么收费啊。
管理员天天
说搞APP要很多钱。Discuz的APP是可以不花钱的,有很多公版的app方案。
比如Discuz hub,一键打包的discuzAPP有很多,开源的Discuz app也很多。
为什么要费事费力抓取木工网
我感觉木工网基本上是个躺平状态,撑一天算一天的事了。他的消失也就是个时间问题了。像是个确诊了癌症的病人。
这些数据还是挺有价值的,所以我想我能做的就是把这些文字抓紧镜像下来。
- 一来我自己方便查阅,
- 二来方便别人查阅,
- 三来纯粹的就是觉得数据丢了可惜,
我们的木工手艺都快失传了,难道我们还不能保留我们的文字嘛!!!
天涯不是就消失了嘛!
页面打开时间3-8秒,非CDN下的静态内容速度很快,同服务器的www.cncdiy.cn也很快,这就是典型的mysql在拖。经验告诉我们,这样的论坛说崩就崩。所以缓存数据刻不容缓
。
关于版权
网站的协议页(https://mgm1.diy.cc/misc.php?mod=faq&action=faq&id=1&messageid=43)适用版权第3条第A款
,A、在用于非商业、非盈利、非广告性目的时需注明作者及文章出处“中国木工爱好者”。
第五章 版权
1、本论坛文章仅代表作者本人观点,与本论坛立场无关。作者文责自负。
2、在本论坛原创发表的文章,其著作权归作者所有,其版权归作者及本论坛共同拥有,未经作者许可,任何人不得擅自用于商业目的。中国木工爱好者有权将在论坛发表的文章用于论坛其他用途。
3、作者无专门声明或者转载时无附带声明的文章其版权申明以下列原则为准:
A、在用于非商业、非盈利、非广告性目的时需注明作者及文章出处“中国木工爱好者”。
B、在用于商业、盈利、广告性目的时需征得文章原作者同意,注明作者姓名、授权范围及文章出处“中国木工爱好者”,并按国家有关法律规定向作者和论坛支付稿费和版权费。
如果原作者不想文章显示在这里,之后我会做一个ban功能,原作者简单提交验证后就可以ban掉自己发布的所有内容。
关于蜘蛛
我的蜘蛛的名字叫MugongSpider
(木工蜘蛛)。作为一个蜘蛛程序,首先就是要尊重网站的robots
(https://mgm1.diy.cc/robots.txt)
我抓取的都是可以直接浏览到的内容(移动端页面),这些帖子,评论等内容,并不在网站Disallow范围内。
#
# robots.txt for Discuz! X3
#
User-agent: *
Disallow: /api/
Disallow: /data/
Disallow: /source/
Disallow: /install/
Disallow: /template/
Disallow: /config/
Disallow: /uc_client/
Disallow: /uc_server/
Disallow: /static/
Disallow: /admin.php
Disallow: /search.php
Disallow: /member.php
Disallow: /api.php
Disallow: /misc.php
Disallow: /connect.php
Disallow: /forum.php?mod=redirect*
Disallow: /forum.php?mod=post*
Disallow: /home.php?mod=spacecp*
Disallow: /userapp.php?mod=app&*
Disallow: /*?mod=misc*
Disallow: /*?mod=attachment*
Disallow: /*mobile=yes*
方案
通过蜘蛛抓取移动端页面上的所有帖子&评论内容,生成archive页面。
帖子和评论这个很容易搞定,不容易搞的是图片,图片可以先跨站调用。但是如果论坛倒闭了,就无法浏览了。
最稳妥的办法是将图片也全部缓存下来,这个工作量就比较大了。先搞定文字内容,图片回头再搞说吧。
抓取中
单线程抓取,比想象的快一些,一分钟抓20条,平均一条3秒,大概35天可以抓完。
帖子数据
大概抓了7天,帖子数据全部抓取完毕,
自增id最后数为999668,共抓取到有效帖子709847,无效帖子289821,发帖用户数153720。
人均发帖:4.6个。
评论数据
大概抓了4天,评论数据全部抓取完毕,
自增id最后数为11079746,共抓取到有效回复11079746,只回复未发帖用户83717。
人均回复:46.5个。
用户数据
总用户数237437(发过帖子+发过回复)
数据统计
thread
有效帖子数量 709847
发布过主题用户数量 153720
人均发帖 4.6个
comment
有效评论数量 11079746
只发布过主题用户数量 83717
人均回复 46.5个
user
用户数量 237437 (发过帖子+发过回复)
清理
清理掉签到板帖子8.5万,回复220万
简单的按月统计发帖量柱状图(出掉签到板块的统计数据):
从统计数据来看,
2006~2013 高速发展期
2013~2018 巅峰期
2018~2020 衰退期
2020~2023 躺平...
2023年下半年每个月只有200多贴,12月到了100多贴,按照这个趋势,2024年月发帖量会跌破100。
2025年关闭?😒😒😒
统计cvs数据:
2006, 1, 4
2006, 2, 53
2006, 3, 74
2006, 4, 182
2006, 5, 145
2006, 6, 102
2006, 7, 68
2006, 8, 109
2006, 9, 199
2006, 10, 268
2006, 11, 242
2006, 12, 379
2007, 1, 348
2007, 2, 263
2007, 3, 422
2007, 4, 412
2007, 5, 576
2007, 6, 430
2007, 7, 369
2007, 8, 510
2007, 9, 554
2007, 10, 437
2007, 11, 503
2007, 12, 525
2008, 1, 794
2008, 2, 579
2008, 3, 851
2008, 4, 912
2008, 5, 766
2008, 6, 768
2008, 7, 778
2008, 8, 699
2008, 9, 846
2008, 10, 997
2008, 11, 1138
2008, 12, 1413
2009, 1, 1275
2009, 2, 1420
2009, 3, 1495
2009, 4, 1351
2009, 5, 1262
2009, 6, 1170
2009, 7, 1000
2009, 8, 1043
2009, 9, 1052
2009, 10, 1016
2009, 11, 1228
2009, 12, 1279
2010, 1, 1150
2010, 2, 787
2010, 3, 1431
2010, 4, 1509
2010, 5, 1414
2010, 6, 1267
2010, 7, 1056
2010, 8, 1158
2010, 9, 1223
2010, 10, 1209
2010, 11, 1907
2010, 12, 2256
2011, 1, 1652
2011, 2, 1537
2011, 3, 2102
2011, 4, 2282
2011, 5, 2667
2011, 6, 1932
2011, 7, 1900
2011, 8, 2162
2011, 9, 2510
2011, 10, 2764
2011, 11, 2911
2011, 12, 3257
2012, 1, 2422
2012, 2, 3325
2012, 3, 3913
2012, 4, 3760
2012, 5, 3788
2012, 6, 3201
2012, 7, 3162
2012, 8, 3203
2012, 9, 3056
2012, 10, 3420
2012, 11, 3716
2012, 12, 5458
2013, 1, 3498
2013, 2, 2440
2013, 3, 3748
2013, 4, 4088
2013, 5, 4046
2013, 6, 3843
2013, 7, 2691
2013, 8, 3351
2013, 9, 3666
2013, 10, 4499
2013, 11, 5750
2013, 12, 6548
2014, 1, 5523
2014, 2, 4415
2014, 3, 6662
2014, 4, 7386
2014, 5, 7442
2014, 6, 7104
2014, 7, 7439
2014, 8, 7447
2014, 9, 7726
2014, 10, 8384
2014, 11, 8477
2014, 12, 8336
2015, 1, 7256
2015, 2, 3376
2015, 3, 5731
2015, 4, 5953
2015, 5, 5839
2015, 6, 5640
2015, 7, 5195
2015, 8, 4736
2015, 9, 4443
2015, 10, 4733
2015, 11, 5458
2015, 12, 6209
2016, 1, 5555
2016, 2, 3407
2016, 3, 6384
2016, 4, 6299
2016, 5, 6135
2016, 6, 5354
2016, 7, 4821
2016, 8, 4582
2016, 9, 4705
2016, 10, 5274
2016, 11, 5311
2016, 12, 6626
2017, 1, 5857
2017, 2, 6559
2017, 3, 10155
2017, 4, 7803
2017, 5, 7384
2017, 6, 7430
2017, 7, 6834
2017, 8, 6598
2017, 9, 6802
2017, 10, 6682
2017, 11, 6285
2017, 12, 5975
2018, 1, 4809
2018, 2, 3202
2018, 3, 4814
2018, 4, 4557
2018, 5, 4391
2018, 6, 4007
2018, 7, 3701
2018, 8, 3604
2018, 9, 3381
2018, 10, 3364
2018, 11, 3466
2018, 12, 3736
2019, 1, 3723
2019, 2, 2916
2019, 3, 4792
2019, 4, 4882
2019, 5, 4329
2019, 6, 3994
2019, 7, 3711
2019, 8, 3377
2019, 9, 3298
2019, 10, 3468
2019, 11, 3279
2019, 12, 3140
2020, 1, 2207
2020, 2, 2715
2020, 3, 3338
2020, 4, 3363
2020, 5, 3191
2020, 6, 2589
2020, 7, 2387
2020, 8, 2069
2020, 9, 1776
2020, 10, 2113
2020, 11, 4049
2020, 12, 5019
2021, 1, 2201
2021, 2, 1841
2021, 3, 2450
2021, 4, 2161
2021, 5, 1891
2021, 6, 1687
2021, 7, 1483
2021, 8, 1303
2021, 9, 1097
2021, 10, 1002
2021, 11, 1080
2021, 12, 997
2022, 1, 1173
2022, 2, 844
2022, 3, 760
2022, 4, 767
2022, 5, 817
2022, 6, 719
2022, 7, 530
2022, 8, 462
2022, 9, 513
2022, 10, 505
2022, 11, 595
2022, 12, 462
2023, 1, 399
2023, 2, 424
2023, 3, 419
2023, 4, 393
2023, 5, 345
2023, 6, 241
2023, 7, 226
2023, 8, 277
2023, 9, 267
2023, 10, 211
2023, 11, 184
2023, 12, 150