数字旗手

电气化、自动化、数字化、智能化、智慧化

0%

资料 52讲轻松搞定网络爬虫 代理的基本原理和用法 我们在做爬虫的过程中经常会遇到这样的情况,最初爬虫正常运行,正常抓取数据,一切看起来都是那么的美好,然而一杯茶的功夫可能就会出现错误,比如 403 Forbidden,这时候打开网页一看,可能会看到 “您的 IP 访问频率太高” 这样的提示,或者跳出一个验证码让我们输入,输入之后才可能解封,但是输入之后过一会儿就又这样了。 出现这种现象的原因是网站采取了一些反爬虫的措施,比如服务器会检测某个 IP 在单位时间内的请求次数,如果超过了这个阈值,那么会直接拒绝服务,返回一些错误信息,这种情况可以称之为封 IP,于是乎就成功把我们的爬虫禁掉了。
Read more »

资料 52讲轻松搞定网络爬虫 异步爬虫的原理和解析 我们知道爬虫是 IO 密集型任务,比如如果我们使用 requests 库来爬取某个站点的话,发出一个请求之后,程序必须要等待网站返回响应之后才能接着运行,而在等待响应的过程中,整个爬虫程序是一直在等待的,实际上没有做任何的事情。对于这种情况我们有没有优化方案呢? 实例引入 比如在这里我们看这么一个示例网站:https://static4.scrape.center/,如图所示。 这个网站在内部实现返回响应的逻辑的时候特意加了 5 秒的延迟,也就是说如果我们用 requests 来爬取其中某个页面的话,至少需要 5 秒才能得到响应。
Read more »

资料 52讲轻松搞定网络爬虫 你有权限吗?解析模拟登录基本原理 在很多情况下,一些网站的页面或资源我们通常需要登录才能看到。比如访问 GitHub 的个人设置页面,如果不登录是无法查看的;比如 12306 买票提交订单的页面,如果不登录是无法提交订单的;再比如要发一条微博,如果不登录是无法发送的。 我们之前学习的案例都是爬取的无需登录即可访问的站点,但是诸如上面例子的情况非常非常多,那假如我们想要用爬虫来访问这些页面,比如用爬虫修改 GitHub 的个人设置,用爬虫提交购票订单,用爬虫发微博,能做到吗? 答案是可以,这里就需要用到一些模拟登录相关的技术了。那么本课时我们就先来了解模拟登录
Read more »

资料 52讲轻松搞定网络爬虫 Requests库的基本使用 学习爬虫,最基础的便是模拟浏览器向服务器发出请求,那么我们需要从什么地方做起呢?请求需要我们自己来构造吗?需要关心请求这个数据结构的实现吗?需要了解 HTTP、TCP、IP 层的网络传输通信吗?需要知道服务器的响应和应答原理吗? 可能你无从下手,不过不用担心,Python 的强大之处就是提供了功能齐全的类库来帮助我们完成这些请求。利用 Python 现有的库我们可以非常方便地实现网络请求的模拟,常见的库有 urllib、requests 等。 拿 requests 这个库来说,有了它,我们只需要关心请求的链接是什么,需要传的参数
Read more »

资料 52讲轻松搞定网络爬虫 HTTP基本原理 URI 和 URL 首先,我们来了解一下 URI 和 URL,URI 的全称为 Uniform Resource Identifier,即统一资源标志符,URL 的全称为 Universal Resource Locator,即统一资源定位符。 举例来说,https://github.com/favicon.ico,它是一个 URL,也是一个 URI。即有这样的一个图标资源,我们用 URL/URI 来唯一指定了它的访问方式,这其中包括了访问协议 HTTPS、访问路径(即根目录)和资源名称 favicon.ico。通过这样一个链接
Read more »

简介 最近在狂补数据分析方面的知识,有一个趁手的“兵器”非常重要(就像在图像处理领域,我一直使用ImagePy,能够快速处理图像和测试算法)。经过搜索,在数据分析领域,发现了一个非常强大的工具——‘D-Tale’。 直接看一下官方简介(下面这段翻译来自最近大火的ChatGPT,对比了一下DeepL的翻译,发现ChatGPT效果更好,DeepL把Pandas直接翻译成了潘达斯): D-Tale是一个Flask后端和React前端的结合,为您提供了一种简单的方法来查看和分析Pandas数据结构。它与ipython笔记本和python / ipython终端无缝集成。目前,该工具支持DataFra
Read more »

参考资料: TorchMetrics Docs TorchMetrics — PyTorch Metrics Built to Scale Improve Your Model Validation With TorchMetrics 什么是指标 弄清楚需要评估哪些指标(metrics)是深度学习的关键。有各种指标,我们就可以评估ML算法的性能。 一般来说,指标(metrics)的目的是监控和量化训练过程。在一些技术中,如学习率调度learning-rate scheduling或提前停止early stopping,指标是用来调度和控制的关键。虽然也可以在这里使用损失loss,但指标是首选
Read more »

——————更新日志—————— 2022.10.5 更新:简化了plugin 简介 vim是一个非常强大的文本编辑器,而Neovim是对原vim的一个分叉,不过最简单的Neovim显得太过朴素,只提供了基本的编辑器功能;然而有赖于它提供了强大的插件系统,可以通过各种插件将其由一个简约的文本编辑器转化为强大的代码开发IDE。 NvChad就是一个Neovim的预配置库,可以使得Neovim开箱即获得各种强大的功能: * NvChad是一个用lua编写的neovim配置,旨在提供一个具有非常漂亮的用户界面和极快的启动时间的基本配置(在基础硬件上约0.02秒至0.07秒); * 懒加载的机
Read more »

简介 一般来说,购买云服务器的用途是将其作为服务,比如构建web网站、博客、小程序、API服务等。这些场景都不需要服务器操作系统的图形界面,直接将相应的服务部署在云服务器上即可;而当前遇到的一个问题是:仍然需要通过云服务器来提供服务(即提供API接口),但背后的算法却依赖一个图形界面的桌面端软件。 默认的云服务器只有终端命令行操作,这是为了轻便和资源的高利用率,因此需要在购买的云服务器上安装操作系统的图形界面,以可运行具有图形界面的桌面端软件。 本文就记录通过VNC安装并连接云服务器的图形界面的过程。 配置和价格 配置1(轻量应用服务器): * 地域和可用性:华北2(北京) * 镜像:
Read more »

简介 这一篇看看如何将使用FastAPI编写的程序打包成docker镜像。 参考教程见这里。 安装依赖包 一般是使用requirements.txt来管理所依赖的包的名字及版本。 该文件的内容形如: 1 2 3 fastapi>=0.68.0,<0.69.0 pydantic>=1.8.0,<2.0.0 uvicorn>=0.15.0,<0.16.0 可以在程序编写过程中手动指定以上内容。 也可以在代码完成后,使用如下命令自动生成: 1 pip freeze > requirements.txt 有了上述requirements.txt文件后,则可以进行安装: 1 p
Read more »