Giter VIP home page Giter VIP logo

Comments (6)

2X-ercha avatar 2X-ercha commented on August 15, 2024

这边需要说明一下我们为什么选择了以发布时间作为依据:

1,许多个人博客文章不怎么习惯给文章加updated,那么文章的更新时间则会按照hexo g的时间。如果友链中的小伙伴没有对他的每篇文章加上updated的话,它的某一次更新博客会导致友链朋友圈的爬虫把未更新的文章一样当作有更新的文章进行计算,直接占满朋友圈(即使它只是新发布或更新了一篇文章或者做了友链的更新)

2,同时在没办法保证每位小伙伴都在主页的文章处有更新时间的情况下,主页爬取规则会失效。而sitemap规则我们已经打算在2.0版本废弃,换成更通用的atom和rss,虽然一样可以爬到更新时间,仍然受上一个原因影响

3,在文章没加上date、链接不变的情况下,发布时间改变不会导致重新爬取而导致出现原因1的情况,只会被当作重复爬取而不被上传。

我们经过讨论觉得没办法很好的处理上述问题,因此可能不会增加此功能。如果对这个功能有自己实现的想法可以回复提出,感谢您的支持与反馈!

from hexo-circle-of-friends.

hermitlsr avatar hermitlsr commented on August 15, 2024

这边需要说明一下我们为什么选择了以发布时间作为依据:

1,许多个人博客文章不怎么习惯给文章加updated,那么文章的更新时间则会按照hexo g的时间。如果友链中的小伙伴没有对他的每篇文章加上updated的话,它的某一次更新博客会导致友链朋友圈的爬虫把未更新的文章一样当作有更新的文章进行计算,直接占满朋友圈(即使它只是新发布或更新了一篇文章或者做了友链的更新)

2,同时在没办法保证每位小伙伴都在主页的文章处有更新时间的情况下,主页爬取规则会失效。而sitemap规则我们已经打算在2.0版本废弃,换成更通用的atom和rss,虽然一样可以爬到更新时间,仍然受上一个原因影响

3,在文章没加上date、链接不变的情况下,发布时间改变不会导致重新爬取而导致出现原因1的情况,只会被当作重复爬取而不被上传。

我们经过讨论觉得没办法很好的处理上述问题,因此可能不会增加此功能。如果对这个功能有自己实现的想法可以回复提出,感谢您的支持与反馈!

的确我没有考虑到存在很多博主不会主动添加updata,实现这个功能确实会比较麻烦。我一开始的想法是,更新的部分是一个单独的逻辑,不和新文章重合。即使没有在博文的front-matter中标注更新,也可以通过特定的标签去识别文章是否更新了,例如在volantis中在文章底部会有

<div class="new-meta-item date" itemprop="dateUpdated" datetime="2021-07-11T18:00:35+08:00"><a class="notlink"><i class="fas fa-edit fa-fw" aria-hidden="true"></i><p>更新于:2021年7月11日</p></a></div>

其中itemprop="dateUpdated"标志着文章更新了。但是这种方式确实很麻烦,而且不同的主题会有区别。
如果可以的话,可以先对update进行一次爬取,之后再分主题进行一次爬取,可以先考虑一些用户基数比较大的主题,比如next、butterfly、volantis等的爬取。最后可将新发文章和更新的文章分栏(?或者其他形式)呈现出来。

from hexo-circle-of-friends.

2X-ercha avatar 2X-ercha commented on August 15, 2024

有通用规则(比如atom和rss,但暂时还不太清楚它的更新时间判断是根据update、文章修改日期还是hexo g的时间来判断)

然后以及对每篇文章具体分析的也会增加爬取分析时间(这也是现阶段在尽量避免的事,我们在考虑抛弃sitemap的原因就是对具体文章的笼统爬取,而具体爬取又会导致时间增加)如果要实现这个功能可能会在友链朋友圈的基础上再开一个辅助项目,我可以先做做测试看看(丢2.1的计划里了

from hexo-circle-of-friends.

2X-ercha avatar 2X-ercha commented on August 15, 2024

@hermitlsr 这个功能打算直接用atom,rss,sitemap三个规则直接抓取,不会再写单页抓取。

另外我们会以分页的方式实现这个功能,即单页以创建时间、另一页以修改时间为依据进行前端的显示,所以会将整个友链朋友圈从后端到前端(爬虫、api、前端页面)都做相应修改。由于改动较大,预计在3.0实现(2.x版本估计也不会太多)

from hexo-circle-of-friends.

hermitlsr avatar hermitlsr commented on August 15, 2024

@2X-ercha 那这样还是不错的,可以说是很符合预期了,期待3.0版本,辛苦各位大大了。

from hexo-circle-of-friends.

2X-ercha avatar 2X-ercha commented on August 15, 2024

忘记回复了,一个月前的3.0版本已经做完了这个功能。不过需要把除数据库以外的其他部署重新部署一遍,具体可看说明书

from hexo-circle-of-friends.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.