Code Monkey home page Code Monkey logo

opensource's People

Contributors

bennythink avatar jiang42 avatar programthink avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

opensource's Issues

关于 issues 的使用说明

opensource 这个项目用来维护“俺收藏的各种开源项目的清单”。

如下几种情况,可以使用 GitHub 的 issues 功能,给俺提供反馈。
(issues 相当于简版的论坛,大伙儿可以利用它进行讨论)

  • 推荐开源项目
    你想推荐某个项目加入到项目清单中。
    (为了避免重复发 issues,先确定你要推荐的项目【没有】包含在清单中)
  • 反馈错误
    你发现项目的清单有误(比如“名称、链接、备注”存在错误)

再推荐几个其它不太知名,但性能还算不错的库

网络库:HP Socket,含tcp\udp\http\https\websocket的实现
日志库:easylogging++
xml:rapidxml。注意,这个不是腾讯的rapidjson
界面库:duilib。国内的开源界面库,但是也基本没人维护了
还有一些其它的库,就不一一列举了,因为不了解。但是像google、facebook等国际知名公司,是有非常多的经典开源库的,大家可以上它们在github上的主页中找,有太多优秀的代码可以参考

【开源自荐】轻快图床:基于Koa2 + Vue3.x + Vite3.x + typescript开发的轻量级快捷图片管理系统、图床系统

  • 项目名称:轻快图床
    基于Koa2 + Vue3.x + Vite3.x + typescript开发的轻量级快捷图片管理系统、图床系统

  • 项目地址:

  • 项目简介 (100 字以内):
    程序员日常就是写博客,当然写博客时就会涉及到在博文中插入图片,所以往往会使用图床来进行图片资源管理,市面上较流行的图床系统是PicGo,是使用electron-vue开发的桌面应用程序,每次换电脑或者重装系统后都需要重新下载安装并配置图床,比较麻烦。所以开发了这款轻快图片管理系统,是基于vue3.x + typescript + vite + koa + mysql开发的前后端分离图床系统,使用该系统可以不需要每次都配置图床。

  • 项目截图 (6张以内):

    • 上传区
      202211101718307.png
    • 图片管理
      202211101719274.png
    • 存储桶管理
      202211101719413.png
    • 字典管理
      202211101725334.png
    • 相册管理
      202211101720094.png
    • 存储桶插件开发
      202302201023375.png

Missing libsodium

libsodium
Sodium is a new, easy-to-use software library for encryption, decryption, signatures, password hashing and more. It is a portable, cross-compilable, installable, packageable fork of NaCl, with a compatible API, and an extended API to improve usability even further.

Upstream: https://github.com/jedisct1/libsodium
License: ISC
(FYI, NaCl was placed in public domain)

Projects that using libsodium or its binding:
shadowsocks
dnscrypt-proxy

关于矩阵运算

1.有一个叫做Eigen的库,提供了很多对矩阵运算的支持
2.在图形学的矩阵变换里,有一个叫glm的库也比较实用

【开源自荐】一个灵活的 Node.js 多功能爬虫库 —— x-crawl

x-crawl · npm GitHub license

x-crawl 是一个灵活的 Node.js 多功能爬虫库。灵活的使用方式和众多的功能可以帮助您快速、安全、稳定地爬取页面、接口以及文件。

如果你也喜欢 x-crawl ,可以给 x-crawl 存储库 点个 star 支持一下,感谢大家的支持!

GitHub:https://github.com/coder-hxl/x-crawl

特征

  • 🔥 异步同步 - 只需更改一下 mode 属性即可切换异步或同步爬取模式。
  • ⚙️ 多种用途 - 可爬页面、爬接口、爬文件以及轮询爬,满足各种场景需求。
  • 🖋️ 写法灵活 - 同种爬取 API 适配多种配置,每种配置方式都非常独特。
  • ⏱️ 间隔爬取 - 无间隔、固定间隔以及随机间隔,产生或避免高并发爬取。
  • 🔄 失败重试 - 避免因短暂的问题而造成爬取失败,自定义重试次数。
  • ➡️ 轮换代理 - 配合失败重试,自定义错误次数以及 HTTP 状态码自动轮换代理。
  • 👀 设备指纹 - 零配置或自定义配置,避免指纹识别从不同位置识别并跟踪我们。
  • 🚀 优先队列 - 根据单个爬取目标的优先级可以优先于其他目标提前爬取。
  • ☁️ 爬取 SPA - 爬取 SPA(单页应用程序)生成预渲染内容(即“SSR”(服务器端渲染))。
  • ⚒️ 控制页面 - 可以表单提交、键盘输入、事件操作、生成页面的屏幕截图等。
  • 🧾 捕获记录 - 对爬取进行捕获记录,并在终端使用彩色字符串提醒。
  • 🦾 TypeScript - 拥有类型,通过泛型实现完整的类型。

示例

以每天自动获取世界各地的经历和房间的一些照片为例:

// 1.导入模块 ES/CJS
import xCrawl from 'x-crawl'

// 2.创建一个爬虫实例
const myXCrawl = xCrawl({ maxRetry: 3, intervalTime: { max: 3000, min: 2000 } })

// 3.设置爬取任务
// 调用 startPolling API 开始轮询功能,每隔一天会调用回调函数
myXCrawl.startPolling({ d: 1 }, async (count, stopPolling) => {
  // 调用 crawlPage API 来爬取页面
  const res = await myXCrawl.crawlPage({
    targets: [
      'https://www.airbnb.cn/s/experiences',
      'https://www.airbnb.cn/s/plus_homes'
    ],
    viewport: { width: 1920, height: 1080 }
  })

  // 存放图片 URL 到 targets
  const targets = []
  const elSelectorMap = ['._fig15y', '._aov0j6']
  for (const item of res) {
    const { id } = item
    const { page } = item.data

    // 等待页面加载完成
    await new Promise((r) => setTimeout(r, 300))

    // 获取页面图片的 URL
    const urls = await page!.$$eval(
      `${elSelectorMap[id - 1]} img`,
      (imgEls) => {
        return imgEls.map((item) => item.src)
      }
    )
    targets.push(...urls)

    // 关闭页面
    page.close()
  }

  // 调用 crawlFile API 爬取图片
  await myXCrawl.crawlFile({ targets, storeDir: './upload' })
})

运行效果:

注意: 请勿随意爬取,爬取前可查看 robots.txt 协议。这里只是为了演示如何使用 x-crawl 。

更多

更多内容可查看:https://github.com/coder-hxl/x-crawl

推荐一个日志分类的库log4cplus

文中的log4cpp我用了一下,无法输出文件行号,这点挺蛋疼的。后来用了log4cplus,而且后者在github里的收藏数量要比前者高很多。

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.