首页 文章 精选 留言 我的

精选列表

搜索[镜像无法拉取],共10000篇文章
优秀的个人博客,低调大师

手把手教你爬天堂网1920*1080大图片(批量下载)——理论篇

/1 前言/ 平时我们要下载图片,要要一个一个点击下载是不是觉得很麻烦?那有没有更加简便的方法呢?答案是肯定的,这里我们以天堂网为例,批量下载天堂网的图片。 /2 项目准备工作/ 首先 我们第一步我们要安装一个pycham的软件。可以参考这篇文章:Python环境搭建—安利Python小白的Python和Pycharm安装详细教程。 天堂网的网址: https://www.ivsky.com/bizhi/1920x1080/ 我们需要下载几个库,怎么下载呢?打开pycharm,依次点击File,再点开Settings,如下图所示。 打开后会出现这个界面点击你的项目名字(project:(你的项目名字)),之后在project interpreter下,点击加号,而后下载我们需要的库,如下图所示。 本项目需要用到的是库是requests、lxml、fake_useragent,如下图所示。fake_useragent一般是没有的,需要通过下面的命令进行安装: pip install fake_useragent /3 项目实现/ 1. 导入需要的库(requests,lxml, fake_useragent)。 2. 我用了封装方法去实现各个部分的功能。首先要写一个框架:构造一个类TianTangWebsite ,然后定义一个__init__方法里继承(self),再定义一个主方法(main)。最后实现这个main方法,依次一步一步进行实现。 3. 我们把天堂网的网址拿过来,构造请求头。这里说一下这个UserAgent的获取方法。在打开天堂网的网站后,按下键盘上的F12键,之后会进入到开发者模式,之后点开network,如下图所示。 4. 而后随便点击一个name,复制header里边的UserAgent就可以了。 我们点击下一页的地址观察网址的变化,如下所示: https://www.ivsky.com/bizhi/1920x1080/index_2.htmlhttps://www.ivsky.com/bizhi/1920x1080/index_3.htmlhttps://www.ivsky.com/bizhi/1920x1080/index_4.html 很明显的发现,这个网址的网页数字一直在变化。我们可以用格式化{}去代替变化的值,类似这样: https://www.ivsky.com/bizhi/1920x1080/index_{}.html 6. 然后我们用for循环去遍历这些网址,代码如下所示: def main(self): for i in range(1,2):#页数随机客户随便 设置 url=self.url.format(i) print(url) 7. 我们定义这个get_home()方法去请求到这个网址。 9. 我们需要解析得到的数据,接下来定义一个xiap的方法,拿到我们请求的网址。接下来就是该项目的关键了。 10. 至此,针对反爬虫的措施我们已经提前做好了准备,下一步将进行网页结构的分析以及网页图片地址数据的提取,并针对解析出来的图片地址予以批量下载,具体实现咱们下篇文章进行详解。 /4 小结/ 本文主要内容为对图片网站进行了基本简介,基于 Python 中的爬虫库 requests 、lxml、fake_useragent,提前部署了请求头,模拟浏览器,针对反爬虫的措施我们已经提前做好了准备。 下篇文章将带大家进行网页结构的分析以及网页图片地址数据的提取,并针对解析出来的图片地址予以批量下载,敬请期待~~

优秀的个人博客,低调大师

如何使用async和await这对组合设计统一的Access Token的函数

最近我在使用SAP云平台的机器学习API做和SAP系统的集成,因为SAP Cloud Platform Leonardo上的机器学期API,每次消费时需要传一个Access Token,故在每次实际调用API前,我需要先发一个请求去获取Access Token. 该请求的响应,除了返回实际的token外,还有一个过期时间,expires_in字段: 根据OAuth 2.0标准定义,expires_in字段代表服务器颁发的该token,距离过期时间还剩的秒数。 我的代码如下: const request = require('request-promise-native'); var config = require('../config.js'); var TOKEN = undefined; var EXPIRES_IN = undefined; var TOKEN_FETCHED_SINCE = undefined; function isCurrentDateExpired(){ var current = new Date(); var diffInMilliSeconds = current - TOKEN_FETCHED_SINCE; var diffInSecond = Math.ceil(diffInMilliSeconds/1000); var expired = diffInSecond >= EXPIRES_IN ? true:false; // for debug; // expired = true; return expired; } async function getAccessToken(){ if( TOKEN === undefined || isCurrentDateExpired()){ var raw = new Buffer(config.username + ":" + config.password); const accessToken = await request({ method: 'GET', headers: { 'Authorization': 'Basic ' + raw.toString('base64') }, url: config.ACCESS_TOKEN, json: false }); var oToken = JSON.parse(accessToken); EXPIRES_IN = oToken.expires_in; TOKEN = oToken.access_token; TOKEN_FETCHED_SINCE = new Date(); return oToken.access_token; } else{ return TOKEN; } } var request1 = getAccessToken(); var freshNewToken, secondTimeToken; request1.then(function(o){ // console.log("token1: " + o); freshNewToken = o; }); function test2(){ var b = getAccessToken(); b.then(function(o){ // console.log("token2: " + o); secondTimeToken = o; console.log("they should be equal: " + (freshNewToken == secondTimeToken)); }); } setTimeout( test2, 6000); 本文来自云栖社区合作伙伴“汪子熙”,了解相关信息可以关注微信公众号"汪子熙"。

优秀的个人博客,低调大师

学习了《python网络爬虫实战》第一个爬虫,爬新浪新闻

请安装anaconda,其中附带的spyder方便运行完查看变量 1.进入cmd控制台, 输入 pip install BeautifulSoup4 pip install requests 2.编写代码,代码已经很清晰了,直接运行不会报错并有成功的结果 def getNewsDetail(newsUrl): import requests from bs4 import BeautifulSoup from datetime import datetime newsWeb = requests.get(newsUrl) newsWeb.encoding = 'utf-8' soup = BeautifulSoup(newsWeb.text,'lxml') result = {} result['title'] = soup.select('.main-title')[0].text result['newsSource'] = soup.select('.source')[0].text timeSource = soup.select('.date')[0].text result['datetime'] = datetime.strptime(timeSource,'%Y年%m月%d日 %H:%M') result['article'] = soup.select('.article')[0].text result['editor'] = soup.select('.show_author')[0].text.strip('责任编辑:') result['comment'] = soup.select('.num')[0].text return result def parseListLinks(url): import requests import json newsDetails = [] request = requests.get(url) jsonLoad = json.loads(request.text.lstrip(' newsloadercallback(').rstrip(');')) newsUrls = [] for item in jsonLoad['result']['data']: newsUrls.append(item['url']) for url in newsUrls: newsDetails.append(getNewsDetail(url)) return newsDetails if __name__ == '__main__': #获取单个新闻页面的信息 newsUrl = 'http://news.sina.com.cn/s/wh/2018-01-08/doc-ifyqkarr7830426.shtml' newsDetail = getNewsDetail(newsUrl) #获取整个列表各个新闻页面的信息 rollUrl='http://api.roll.news.sina.com.cn/zt_list?channel=news&cat_1=gnxw\ &cat_2==gdxw1||=gatxw||=zs-pl||=mtjj&level==1||=2&show_ext=1&show_all=1&\ show_num=22&tag=1&format=json&page=23&callback=newsloadercallback&_=1515911333929' newsDetails = parseListLinks(rollUrl)

优秀的个人博客,低调大师

🔥 区块支持高度设置:开源代码 / 低代码平台 NocoBase

原文链接:https://www.nocobase.com/cn/blog/weekly-updates-20260212 汇总一周产品更新日志,最新发布可以前往我们的博客查看。 NocoBase 目前更新包括的版本更新包括三个分支:main ,next和 develop。 main :截止目前最稳定的版本,推荐安装此版本。 next:包含即将发布的新功能,经过初步测试的版本,可能存在部分已知或未知问题。主要面向测试用户,用于收集反馈和进一步优化功能。适合愿意提前体验新功能并提供反馈的测试用户。 develop:开发中的版本,包含最新的功能代码,可能尚未完成或存在较多不稳定因素,主要用于内部开发和快速迭代。适合对产品功能前沿发展感兴趣的技术用户,但可能存在较多问题或不完整功能,不建议在生产环境中使用。 main v1.9.46 发布时间:2026-02-11 🐛 修复 [client] 修复编辑表单关系字段从可编辑切换到只读模式时字段组件可选项未实时刷新的问题 (#8611) by @katherinehhh [数据可视化:ECharts] 修复 ECharts 拼写错误 by @heziqiang [工作流:审批] 修复“我的申请”详情弹窗中字段值丢失的问题 by @mytharcher 修复保存前模式下手动执行报错的问题 by @mytharcher v1.9.45 发布时间:2026-02-09 🐛 修复 [字段组件:掩码] 修复掩码字段配置弹窗里面无法正确加载全部用户角色的问题。 by @gchust [工作流:审批] 修复加载详情数据时使用了错误的 id 参数 by @mytharcher v1.9.44 发布时间:2026-02-08 🎉 新特性 [工作流:审批] 为审批相关 API 增加权限控制 by @mytharcher v1.9.43 发布时间:2026-02-06 🎉 新特性 [认证:钉钉] 支持通过 unionId 绑定用户 by @2013xile 🚀 优化 [数据表字段:Markdown(Vditor)] 新增默认编辑模式配置项,支持在组件设置中选择初始编辑状态 (#8408) by @Cyx649312038 🐛 修复 [操作:导入记录] 修复导入操作的安全隐患 (#8544) by @mytharcher next v2.0.0-beta.23 发布时间:2026-02-12 🎉 新特性 [区块:网格卡片] 区块支持高度设置 (#8583) by @katherinehhh [操作:批量编辑] 批量编辑 2.0 (#8526) by @jiannx 🚀 优化 [client] 表格 2.0 支持拖拽排序 (#8540) by @jiannx 将字段赋值和默认值相关配置重构为表单级别配置。 (#8596) by @chenos [本地化] 自动创建 i18n 缺失的词条 (#8588) by @jiannx 🐛 修复 [client] 修复表单关系字段组件中标题字段使用外键字段时下拉列表数据展示异常的问题 (#8619) by @katherinehhh 修复编辑表单中关系附件字段清空后提交保存无效的问题 (#8616) by @katherinehhh 修复编辑表单关系字段从可编辑切换到只读模式时字段组件可选项未实时刷新的问题 (#8611) by @katherinehhh 修复 JS column 代码编辑器里点击 run 按钮后表格列不重新的问题。 (#8608) by @gchust 修复编辑表单关系字段数据选择器已选数据修改后无法恢复的问题 (#8610) by @katherinehhh [文件管理器] 修复表单中文件类型字段禁用后仍可打开选择弹窗的问题 (#8617) by @katherinehhh [数据可视化:ECharts] 修复 ECharts 拼写错误 by @heziqiang [工作流:审批] 修复“我的申请”详情弹窗中字段值丢失的问题 by @mytharcher 修复保存前模式下手动执行报错的问题 by @mytharcher v2.0.0-beta.22 发布时间:2026-02-10 🎉 新特性 [client] 支持在页面、页面标签、弹窗、弹窗标签配置浏览器页签标题 (#8590) by @zhangzhonghe [工作流:审批] 为审批相关 API 增加权限控制 by @mytharcher 🚀 优化 [client] 筛选表单关系字段使用独立的字段 model (#8511) by @zhangzhonghe [工作流:抄送] 重构工作流抄送插件以支持 FlowModel 架构,兼容 v1/v2 配置 (#8405) by @zhangzhonghe 🐛 修复 [flow-engine] 修复 JS block 区块中无法创建 Blob 对象的问题。 (#8603) by @gchust 修复 JS Models 里面的 "ctx.sql" 执行时上下文不正确的问题。 (#8602) by @gchust [字段组件:掩码] 修复掩码字段配置弹窗里面无法正确加载全部用户角色的问题。 by @gchust [工作流:审批] 修复加载详情数据时使用了错误的 id 参数 by @mytharcher v2.0.0-beta.21 发布时间:2026-02-07 🎉 新特性 [client] 支持在表单中配置关系字段的字段 (#8578) by @katherinehhh [操作:复制记录] 新增 2.0 复制操作 (#8580) by @katherinehhh [工作流] 在工作流画布上支持复制粘贴节点和拖拽移动节点的位置 (#8559) by @mytharcher 🚀 优化 [flow-engine] 优化 JS model 代码编辑器相关的自动补全和提示。 (#8575) by @gchust [工作流:审批] 移除对 JS Field 的支持 by @zhangzhonghe 🐛 修复 [client] 修复非配置模式时可能出现 "read hidden" 渲染报错。 (#8591) by @gchust 修复编辑表单中子表格(行内编辑)设为只读后切换阅读态子表格时仍保留编辑态列字段的问题 (#8589) by @katherinehhh [前端流引擎] 修复使用区块模板时如果使用复制模式会导致弹窗打开后为空的问题。 (#8581) by @gchust [区块:地图] 修复地图区块出现两个「保存为模版」配置项问题 (#8584) by @katherinehhh v2.0.0-beta.20 发布时间:2026-02-05 🎉 新特性 [client] 支持配置数据加载方式 (#8551) by @zhangzhonghe 🐛 修复 [flow-engine] 修复子表格(弹窗编辑)中配置 createModelOptions 后列操作删除失效的问题 (#8576) by @katherinehhh [邮件管理] 管理页面添加筛选 by @jiannx 修复多个用户间相同邮箱邮件问题,性能优化 by @jiannx 修复会话链 by @jiannx develop v2.0.0-alpha.71 发布时间:2026-02-10 🎉 新特性 [client] 支持在页面、页面标签、弹窗、弹窗标签配置浏览器页签标题 (#8590) by @zhangzhonghe 支持在表单中配置关系字段的字段 (#8578) by @katherinehhh [区块:网格卡片] 区块支持高度设置 (#8583) by @katherinehhh [操作:复制记录] 新增 2.0 复制操作 (#8580) by @katherinehhh [工作流:审批] 为审批相关 API 增加权限控制 by @mytharcher 🚀 优化 [client] 筛选表单关系字段使用独立的字段 model (#8511) by @zhangzhonghe [工作流:抄送] 重构工作流抄送插件以支持 FlowModel 架构,兼容 v1/v2 配置 (#8405) by @zhangzhonghe 🐛 修复 [flow-engine] 修复 JS Models 里面的 "ctx.sql" 执行时上下文不正确的问题。 (#8602) by @gchust 修复 JS block 区块中无法创建 Blob 对象的问题。 (#8603) by @gchust [client] 修复 JS column 代码编辑器里点击 run 按钮后表格列不重新的问题。 (#8608) by @gchust 修复非配置模式时可能出现 "read hidden" 渲染报错。 (#8591) by @gchust 修复编辑表单中子表格(行内编辑)设为只读后切换阅读态子表格时仍保留编辑态列字段的问题 (#8589) by @katherinehhh [前端流引擎] 修复使用区块模板时如果使用复制模式会导致弹窗打开后为空的问题。 (#8581) by @gchust [字段组件:掩码] 修复掩码字段配置弹窗里面无法正确加载全部用户角色的问题。 by @gchust [工作流:审批] 修复加载详情数据时使用了错误的 id 参数 by @mytharcher v2.0.0-alpha.70 发布时间:2026-02-06 🎉 新特性 [工作流] 在工作流画布上支持复制粘贴节点和拖拽移动节点的位置 (#8559) by @mytharcher 🚀 优化 [工作流:审批] 移除对 JS Field 的支持 by @zhangzhonghe 🐛 修复 [区块:地图] 修复地图区块出现两个「保存为模版」配置项问题 (#8584) by @katherinehhh v2.0.0-alpha.69 发布时间:2026-02-05 🎉 新特性 [client] 支持配置数据加载方式 (#8551) by @zhangzhonghe [flow-engine] 支持配置 ESM_CDN_BASE_URL 环境变量 (#8529) by @chenos [认证:钉钉] 支持通过 unionId 绑定用户 by @2013xile 🚀 优化 [flow-engine] 优化 JS model 代码编辑器相关的自动补全和提示。 (#8575) by @gchust [client] 行内编辑子表格列宽配置方式调整为下拉选择 (#8561) by @katherinehhh ResourceActionProvider 支持禁用多余的默认 appends 参数 (#8527) by @2013xile [acl] acl 添加 generalFixedParams 方法 (#8363) by @jiannx [数据表字段:Markdown(Vditor)] 新增默认编辑模式配置项,支持在组件设置中选择初始编辑状态 (#8408) by @Cyx649312038 [工作流] 修改工作流子页面的路由路径,将工作流页面都统一在 /admin/settings/workflow 路径之下 (#8519) by @mytharcher [AI: 知识库] 优化构建产物,缩小 AI 知识库插件的包体积 by @cgyrock [多空间] 多空间权限控制接入 acl by @jiannx [认证:钉钉] 默认使用 userid 关联用户,并保持已有认证器使用手机号的兼容性 by @2013xile 🐛 修复 [client] 修复开启树表格后需刷新页面才能添加「添加子记录」操作的问题 (#8574) by @katherinehhh 修复 Grid 布局中存在占位的问题 (#8535) by @zhangzhonghe 修复子表格行内编辑时列宽缩小时未实时更新,多行文本字段列宽变宽后输入框未随列宽自适应的问题 (#8573) by @katherinehhh 修复编辑表单中通过关系字段选择器的快速新增按钮添加数据时会将表单中的数据覆盖的问题。 (#8567) by @gchust 非树结构表隐藏表格区块 属性里的「启用树表格」和「默认展开所有行」 (#8566) by @katherinehhh 修复添加操作弹窗不应该出现表格(添加)菜单的问题。 (#8562) by @gchust 修复 nanoid 字段新增表单提交后未重新生成默认值的问题 (#8538) by @katherinehhh 修复事件流刷新跨弹窗目标区块时不生效的问题。 (#8541) by @gchust 修复筛选相关的已知问题 (#8514) by @zhangzhonghe 修复表单提交后数据区块会重复刷新的问题。 (#8531) by @gchust 修复首次打开弹窗后关闭弹窗导致页面数据错误刷新问题。 (#8548) by @gchust 修复多层级对多字段子表单字段联动规则无法使用表单变量赋值的问题。 (#8518) by @gchust 修复级联组件在设置默认值时数据显示异常的问题 (#8537) by @katherinehhh 修复多级弹窗及跨区块数据变更后不刷新问题。 (#8471) by @gchust [flow-engine] 修复子表格(弹窗编辑)中配置 createModelOptions 后列操作删除失效的问题 (#8576) by @katherinehhh 修复切换页面后再次打开弹窗提交表单后不刷新的问题。 (#8554) by @gchust 修复 JS block 中部分第三方库无法被正确引入的问题。 (#8545) by @gchust 修复 runjs 在模块解析阶段对部分 ESM 库误判为 AMD 模块,导致加载逻辑错误的问题。 (#8536) by @gchust 修复外部数据源 filterTargetKey 为单元素数组时 FilterByTK 处理错误 (#8522) by @katherinehhh 修复子表格(弹窗编辑)中配置 createModelOptions 后列操作删除失效的问题 (#8560) by @katherinehhh [数据表字段:附件(URL)] 修复编辑表单中附件 URL 字段配置显示文件名不生效的问题 (#8571) by @katherinehhh [AI 员工] 修复 LLM 节点发送消息失败的问题 (#8569) by @2013xile 修复构建后系统无法启动问题 (#8523) by @cgyrock 修复 AI 建模时自动调用工具时出现的异常 (#8532) by @cgyrock [UI 模板] 修复将关系字段新增记录表单弹窗保存为模板后再次打开并提交表单时报错的问题。 (#8564) by @gchust [操作:导入记录] 修复导入操作的安全隐患 (#8544) by @mytharcher [文件管理器] 加固本地存储引擎的文件路径处理,以避免访问到上传目录以外的位置 (#8539) by @mytharcher [工作流] 为选择表记录的组件增加容错,以避免表被删除后组件报错 (#8528) by @mytharcher [工作流:自定义操作事件] 修复触发自定义操作工作流时参数和载荷数据不正确的问题 by @mytharcher [多空间] 空间字段删除 read-pretty 属性 by @jiannx 添加迁移脚本移除空间字段中 x-ready-pretty by @jiannx [AI: 知识库] 修复构建后系统无法启动问题 by @cgyrock [操作:导入记录 Pro] 修复导入结果的统计数字和消息翻译 by @mytharcher [工作流:子流程] 修复工作流链接的路由路径 by @mytharcher [模板打印] 修复模板打印按钮模板配置页字段列表显示异常的问题 by @katherinehhh [工作流:审批] 修复列表 API 加载时由于追加 JSON 字段导致的性能问题(MySQL) by @mytharcher 为删除的工作流增加容错,避免待办列表加载报错 by @mytharcher 修复已有人员范围的工作流禁用后,对用户增加角色时的报错问题 by @mytharcher [邮件管理] 选中文本时正文不折叠。修复附件下载失败 by @jiannx [企业微信] 修复用户缺少手机号时不能自动注册的问题 by @2013xile

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册