- 博客(67)
- 资源 (4)
- 收藏
- 关注
原创 使用docker安装crawlab报错:error=unknown authenticator: <mongo_auth_mechanism>
**摘要:**Crawlab安装时出现MongoDB认证错误,原因是Docker配置未指定认证机制,默认使用SCRAM-SHA-1与MongoDB 8.0不兼容。解决方案是在docker-compose.yml中明确设置CRAWLAB_MONGO_AUTHMECHANISM: "SCRAM-SHA-256",并通过命令行重新部署容器组。注意需要完整执行pull和up命令,仅重启容器无效。(100字)
2025-07-07 11:09:49
1011
原创 MySQL 中 -> 和 ->> 操作符的区别
MySQL中->和->>操作符都用于提取JSON数据,但存在关键差异:->返回带引号的JSON格式值,等效于JSON_EXTRACT();而->>返回无引号的字符串值,等效于JSON_UNQUOTE(JSON_EXTRACT())。实际应用中,->>适合直接比较或字符串操作,->则用于需要保留JSON格式的场景。例如提取{"source":"google"}时,->'$.source'返回"goog
2025-07-04 09:50:17
166
原创 使用Feapder中的Dedup过滤数据
摘要: Feapder的Dedup模块提供了高效的数据去重功能,支持BloomFilter等多种去重方式。该模块采用弹性机制,可处理海量数据。示例代码展示了如何生成测试数据并进行去重操作,通过添加数据和过滤已存在数据实现去重。Dedup支持多种参数配置,包括去重类型、名称、过期时间、误判率等,并可通过Redis存储去重信息。与普通BloomFilter不同,Dedup采用动态扩展机制,当容量不足时会自动扩展新过滤器。
2025-07-03 17:07:15
165
原创 Python 中深拷贝和浅拷贝的区别?
浅拷贝与深拷贝的核心区别在于子对象的复制方式:浅拷贝仅复制顶层对象,子对象仍共享内存地址(修改子对象会影响原对象);深拷贝递归复制所有子对象,实现完全独立。浅拷贝适合不可变子对象或无需独立副本的场景(如copy.copy()),性能更快;深拷贝适用可变子对象需隔离的场景(如copy.deepcopy()),但性能较低。不可变对象的两种拷贝效果相同,自定义对象可通过特殊方法控制拷贝行为。
2025-06-26 10:56:48
333
原创 FastAPI 运行后显示上个接口内容?
FastAPI接口不更新问题解决 常见原因及解决方法: 缓存问题:完全终止服务(Ctrl+C)后重启fastapi dev main.py 文件未保存:确认代码已保存并检查文件内容 浏览器缓存:强制刷新(Ctrl+F5)或使用无痕模式访问 端口冲突:终止所有Python进程后重启服务 代码加载问题:添加打印语句测试修改是否生效 确保热重载:使用uvicorn main:app --reload命令 建议按顺序排查,从强制重启服务和清除缓存开始。
2025-06-24 15:20:30
234
原创 zsh: command not found: conda
在 Linux 服务器上使用 zsh 时,如果出现 `zsh: command not found: conda` 错误,说明你的系统未正确配置 `conda` 命令,或者你尚未安装 Anaconda/Miniconda。
2025-02-11 23:12:43
1501
原创 arm64-v8a 和 armeabi-v7a 有啥区别?
总的来说,ARM64-v8a 提供更高的性能和更大的内存支持,非常适合现代应用,而 ARMEABI-v7a 在较旧设备上流行且兼容性强。对于开发者来说,通常建议为应用同时提供这两种架构的支持,以确保广泛的设备兼容性和最佳性能。
2024-11-04 14:52:01
5233
原创 url 和 uri 有什么区别?
URL(Uniform Resource Locator):URL 是 URI 的一种特定类型,它用于标识网络上的资源的位置。URI(Uniform Resource Identifier)是一个更通用的概念,用于标识任何类型的资源,不仅仅是网络资源。URL(Uniform Resource Locator)和URI(Uniform Resource Identifier)是两个与网络资源定位和标识相关的概念,它们有一些区别,但也存在一些重叠。
2023-08-18 16:54:35
478
原创 htop 命令介绍
htop是一个交互式的系统监视工具,用于查看系统中正在运行的进程和资源使用情况。它以彩色的方式展示进程列表,并比标准的top命令提供了更多的信息和功能。。
2023-08-17 17:46:18
1554
原创 Python 字符串格式化的方式有哪些?
总之,f-string 是最新的、最简洁且最易读的字符串格式化方式,它在大多数情况下是首选。当在 Python 中进行字符串格式化时,有三种常用的方式:百分号(%)、方法在一些情况下仍然有用,特别是在需要更复杂格式化的情况下。方法和 f-string。
2023-08-12 13:34:42
651
原创 Python requests 中 timeout = 300 和 timeout = (300, 300) 有什么区别?
timeout 被设置为一个包含两个数值的元组。第一个数值是连接超时时间,表示请求建立连接的时间不能超过300秒。第二个数值是读取超时时间,表示从服务器读取响应的时间不能超过300秒。被设置为一个单独的数值,表示请求的连接和读取操作都必须在指定的秒数内完成。如果连接建立时间或响应读取时间超过300秒,请求将被视为超时。参数用于指定请求的超时时间,即请求在等待服务器响应时最多等待的时间。的形式,因为这样可以在连接和读取操作上都设置合适的超时时间,以避免请求长时间阻塞。通常情况下,建议使用。
2023-08-12 11:45:21
1453
原创 代理类型中的 HTTP、HTTPS 和 SOCKS 有什么区别?
综上所述,HTTP 代理主要用于 HTTP 请求的转发,HTTPS 代理在处理加密的 HTTPS 连接时具有特殊能力,而 SOCKS 代理是一种通用的代理协议,适用于各种类型的流量转发。选择使用哪种代理类型取决于你的需求,以及你希望在网络通信中达到什么样的目标。HTTP、HTTPS 和 SOCKS 都是代理(Proxy)协议,用于在网络通信中转发请求和响应,但它们在工作原理和用途上有一些区别。
2023-08-11 16:42:49
1907
原创 如何在 CentOS 服务器后台运行 Python 脚本,并将日志输出到日志文件中?
因工作原因,需要在 CentOS 服务器后台运行 Python 脚本,这里将一些相关的操作记录一下,以供有需要的小伙伴参考。
2023-05-06 09:53:14
2711
原创 如何在 CentOS 7 服务器上创建新用户?
因工作原因,需要在 CentOS 7 服务器创建新的账户,以供别人使用。以下为创建新账户的相关步骤,有需要的小伙伴可以参考。
2023-04-26 11:18:36
8860
原创 Python:如何在 CentOS 8 服务器上运行 Selenium 代码?
因项目需求,需要在 CentOS 8 服务器上运行 Python-Selenium 代码,那么该如何操作呢?
2022-11-28 18:31:15
1345
原创 selenium:Message: unknown error : session deleted because of page crash
Message: unknown error : session deleted because of page crashfrom unknown error : cannot determine 1oading status
2022-11-25 20:15:53
2443
3
原创 Oh My ZSH使用教程
🙃一个令人愉快的社区驱动(拥有 2,000 多名贡献者)框架,用于管理您的 zsh 配置。包括 300 多个可选插件(rails、git、macOS、hub、docker、homebrew、node、php、python 等)、140 多个主题为您的早晨增添趣味,以及一个自动更新工具,以便轻松跟上来自社区的最新更新。
2022-10-11 22:18:15
1799
原创 Feapder:将字符串格式的html文本转换成Response
在做Python爬虫项目的时候,有时候需要将字符串格式的html文本转换为feapder Response格式,然后再使用XPath、CSS、BeautifulSoup等解析出需要的数据。
2022-10-10 14:48:20
689
原创 Docker:宝塔下打包镜像并上传镜像然后在其它服务器上运行镜像
已经在宝塔下部署并配置好的Docker项目,如果想在其它服务器上省去配置然后直接运行,那么该如何操作呢?
2022-10-08 16:58:00
2560
原创 Python-Selenium:如何通过click在新的标签页打开链接?
场景描述在使用Selenium的时候,如果遇到a标签列表,而且每个都需通过点击(click())进入a标签对应的页面进行单独处理,而直接访问a链接无法访问(防盗链),那么这个时候该怎么处理呢?最好的办法就是先获取到a标签列表,然后遍历a标签列表,依次在新标签页上打开链接,然后切换到新标签页再做单独处理,处理完毕后再调用close()方法关闭当前标签页。对于a标签中带有target="_blank"参数的链接,打开的时候会自动在新的标签页打开,如:<a href="http://news.bai
2021-12-08 15:43:05
9397
1
原创 Python-Selenium:如何停止页面的不必要加载?
场景描述在使用Selenium的时候,如果遇到页面因为网络等原因导致的加载缓慢,而自己要解析的内容其实已经加载出来了,这个时候需要停止网页的继续加载,继而去解析已经加载出来的页面元素,那么该如何停止页面的不必要加载呢?代码示例from selenium import webdriverfrom selenium.webdriver.chrome.options import Optionsoptions = Options()# 停止页面的不必要加载options.page_load_str
2021-12-05 16:48:03
4053
原创 Python:针对HTML内容的数据清洗
场景描述在使用Python爬虫的时候经常需要对爬取的数据进行清洗,以此来过滤掉不需要的内容。对于爬取的结果为文本的数据经常采用正则(re.sub())来进行数据清洗,但是对于爬取的结果为HTML的数据如果还是采用正则来进行数据清洗的话往往会事倍功半,那么针对爬取的结果为HTML的数据又该如何进行数据清洗呢?代码示例import scrapyfrom lxml import etreefrom lxml import htmlfrom html import unescapeclass Te
2021-11-30 14:27:26
3177
原创 Requests报错:requests.exceptions.SSLError: HTTPSConnectionPool 和 Max retries exceeded with url
场景描述在使用Requests高频率请求一些链接的时候,经常会遇到类似requests.exceptions.SSLError: HTTPSConnectionPool的报错,那么遇到这种情况该怎么办呢?代码示例import urllib3import requests# 关闭在设置了verify=False后的错误提示urllib3.disable_warnings()# verify=False:关闭证书验证requests.get(url=url, headers=headers,
2021-11-26 16:19:59
2052
原创 Python如何上传文件?
场景描述在工作中经常需要把一些文件上传到服务器,以方便使用和管理,如:将文件上传到腾讯云的对象存储(COS)。那么该如何使用Python实现文件上传呢?代码示例import requestsclass Upload: def __init__(self): """ 基础配置 """ # 请求头 self.headers = { 'User-Agent': 'Mozilla/5.0 (W
2021-11-26 13:19:00
13218
原创 MongoDB:如何使用PyMongo连接有用户名和密码的数据库?
场景描述平时在线下环境使用PyMongo连接MongoDB数据库时都是连接的没有用户名和密码的数据库,那么对于有用户名和密码的MongoDB数据库(线上环境)又该怎么连接呢?代码示例import pymongoclient = pymongo.MongoClient(host='host', port=27017)# # info_data 需要用户名和密码进行身份认证的数据库db = client.info_data# username:用户名;password:密码db.authent
2021-11-23 16:50:10
4583
1
原创 MongoDB:PyMongo百万级数据去重
场景描述在Python爬虫中经常使用MongoDB数据库来存储爬虫爬取的结果,于是乎就有了一个问题:百万级的MongoDB数据如何去重?常见的思路便是在数据入库的时候检查该数据在数据库中是否已经存在,如果存在则忽略(效率高点)或者覆盖,这样做在数据量比较少的时候是适用的,但是在数据量比较大的时候(百万级及以上)这样做往往是效率非常低的!而且如果是已有的未去重的百万级数据库又该怎么办呢?也可以使用distinct语句进行去重,但是还是那个问题,distinct语句并不适用于百万级数据,甚至在数据量大的
2021-11-19 11:19:52
3201
原创 Linux:如何将服务器时间调整为本地时间?
场景描述部署在服务器上的项目用到了时间模块(如:定时任务、日志、更新时间等),这时候发现服务器上的时间(UTC)和本地时间(UTC+8)不一致,那么该如何将服务器上的时间调整为本地时间呢?解决方案在服务器上输入以下命令即可:timedatectl set-timezone Asia/Shanghai可以使用date命令查看当前时区修改时区之前修改时区之后...
2021-11-17 12:33:43
2263
原创 MongoDB:如何将同一个数据库下的集合复制到另一个集合?
场景描述在使用MongoDB的过程中,需要将数据库中有效的值从一个总的集合中复制到一个存储有效值的集合中,那么关于这个需求,该怎么实现呢?实现方案示例:db.all_info.find({'notice_content':{$ne:''}}).forEach(function(x){db.useful_data.insert(x)})上边的示例,是将all_info集合中的数据通过{'notice_content':{$ne:''}筛选条件,将其中notice_content字段不为空的数据,
2021-11-09 17:25:13
4244
原创 宝塔下安装MongoDB后无法启动?
配置环境MongoDB:v4.4.6Linux:CentOS 8.3问题描述最开始是发现在宝塔下“软件商店”里升级MongoDB无法成功,于是我就将老版本的MongoDB在宝塔下的“软件商店”里卸载了,然后又在宝塔下的“软件商店”里重装了一遍,这个时候发现虽然MongoDB版本成功升级了,但是出现了一个新的问题:安装的MongoDB无法启动,点击启动只是闪一下,然后发现还是没有启动。报错日志截图如下:无法启动的MongoDB截图如下:原因分析MongoDB不能跨版本升级,只能一
2021-11-08 11:19:38
3888
4
原创 MongoDB报错:TypeError: Object of type ObjectId is not JSON serializable
场景描述在使用MongoDB数据库插入数据之后,再使用Flask-RESTful接口返回数据的时候报错:TypeError: Object of type ObjectId is not JSON serializable原因分析造成该问题的原因是数据在写入MongoDB的时候,即使你没有指定_id字段,也会为每一条数据自动生成一个_id字段,例如:{ "_id" : ObjectId("6180af3ef261f0827ea248d6"), "省份名称" : "澳门",
2021-11-05 14:38:26
2659
原创 Flask Error:ModuleNotFoundError: No module named ‘flask._compat‘
版本信息Flask==2.0.2Flask-Script==2.0.6场景描述在使用Flask的Flask-Script拓展时运行 python .\app.py runserver -d -r 命令报错:Traceback (most recent call last): File "C:\Users\server\Desktop\gongkaoleida\api\app.py", line 2, in <module> from flask_script import
2021-11-04 13:27:36
1203
1
原创 在Django Admin后台实现显示彩色标签项
业务需求想在Django Admin后台显示彩色标签项,如下图:那么究竟该如何实现上图所示的彩色标签呢?解决方案这里使用django-taggit来实现该功能,具体步骤如下:安装django-taggit模块pip install django-taggit配置settings.py添加"taggit"到您的项目INSTALLED_APPS设置中INSTALLED_APPS = [ ...... , 'taggit']配置完成后,运行python .\manage.py
2021-10-13 10:34:09
656
1
原创 在 Django 应用中获取上传文件的文件大小
场景描述在使用Django模型中的FileField字段上传文件后,如果想获取上传的文件的大小,该怎么办呢?虽然Django提供了FieldFile.siz方法,但是该方法获取的文件大小的单位是字节,不够人性化,那么如何更人性化(KB、MB、GB)的获取上传文件的大小呢?解决方案在模型文件(models.py)中添加添加属性方法filesize():from django.db import modelsfrom django.contrib.auth.models import User#
2021-10-11 10:50:38
1684
原创 PowerShell报错:无法加载文件C:\Users\server\Documents\windowsPowerShell\profile.ps1...
前言在安装过Anaconda后使用PowerShell报错:报错原因PowerShell默认禁止运行脚本,但是因为安装Anaconda后再启动PowerShell时需要运行脚本,所以会报错。可以通过在PowerShell中执行 get-ExecutionPolicy 语句验证这点,如图:表示在PowerShell中运行脚本是禁止的解决方案(步骤)“以管理员身份运行”PowerShell,如图:在PowerShell中执行 set-ExecutionPolicy RemoteS
2021-10-08 16:01:24
16816
14
Mac OS Big Sur主题
2020-08-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人