【爬虫软件】孔夫子二手书采集

news2025/3/11 0:07:08

项目演示

孔网爬取图书信息

目录结构

[
  '    |-- api-ms-win-core-synch-l1-2-0.dll',
  '    |-- api-ms-win-core-sysinfo-l1-1-0.dll',
  '    |-- api-ms-win-core-timezone-l1-1-0.dll',
  '    |-- api-ms-win-core-util-l1-1-0.dll',
  '    |-- api-ms-win-crt-conio-l1-1-0.dll',
  '    |-- api-ms-win-crt-convert-l1-1-0.dll',
  '    |-- api-ms-win-crt-environment-l1-1-0.dll',
  '    |-- api-ms-win-crt-filesystem-l1-1-0.dll',
  '    |-- api-ms-win-crt-heap-l1-1-0.dll',
  '    |-- api-ms-win-crt-locale-l1-1-0.dll',
  '    |-- api-ms-win-crt-math-l1-1-0.dll',
  '    |-- api-ms-win-crt-multibyte-l1-1-0.dll',
  '    |-- api-ms-win-crt-process-l1-1-0.dll',
  '    |-- api-ms-win-crt-runtime-l1-1-0.dll',
  '    |-- api-ms-win-crt-stdio-l1-1-0.dll',
  '    |-- api-ms-win-crt-string-l1-1-0.dll',
  '    |-- api-ms-win-crt-time-l1-1-0.dll',
  '    |-- api-ms-win-crt-utility-l1-1-0.dll',
  '    |-- base_library.zip',
  '    |-- libcrypto-1_1.dll',
  '    |-- libopenblas.XWYDX2IKJW2NMTWSFYNGFUWKQU3LYTCZ.gfortran-win_amd64.dll',
  '    |-- libssl-1_1.dll',
  '    |-- pyexpat.pyd',
  '    |-- python3.dll',
  '    |-- python37.dll',
  '    |-- select.pyd',
  '    |-- tcl86t.dll',
  '    |-- tk86t.dll',
  '    |-- ucrtbase.dll',
  '    |-- unicodedata.pyd',
  '    |-- VCRUNTIME140.dll',
  '    |-- VCRUNTIME140_1.dll',
  '    |-- _bz2.pyd',
  '    |-- _cffi_backend.cp37-win_amd64.pyd',
  '    |-- _ctypes.pyd',
  '    |-- _decimal.pyd',
  '    |-- _elementtree.pyd',
  '    |-- _hashlib.pyd',
  '    |-- _lzma.pyd',
  '    |-- _multiprocessing.pyd',
  '    |-- _queue.pyd',
  '    |-- _socket.pyd',
  '    |-- _ssl.pyd',
  '    |-- _tkinter.pyd',
  '    |-- 孔夫子二手书采集.exe',
  '    |-- certifi',
  '    |   |-- cacert.pem',
  '    |   |-- py.typed',
  '    |-- charset_normalizer',
  '    |   |-- md.cp37-win_amd64.pyd',
  '    |   |-- md__mypyc.cp37-win_amd64.pyd',
  '    |-- cryptography',
  '    |   |-- hazmat',
  '    |       |-- bindings',
  '    |           |-- _rust.pyd',
  '    |-- cryptography-41.0.7.dist-info',
  '    |   |-- INSTALLER',
  '    |   |-- LICENSE',
  '    |   |-- LICENSE.APACHE',
  '    |   |-- LICENSE.BSD',
  '    |   |-- METADATA',
  '    |   |-- RECORD',
  '    |   |-- REQUESTED',
  '    |   |-- top_level.txt',
  '    |   |-- WHEEL',
  '    |-- file',
  '    |   |-- output.xlsx',
  '    |-- lxml',
  '    |   |-- builder.cp37-win_amd64.pyd',
  '    |   |-- etree.cp37-win_amd64.pyd',
  '    |   |-- objectify.cp37-win_amd64.pyd',
  '    |   |-- sax.cp37-win_amd64.pyd',
  '    |   |-- _elementpath.cp37-win_amd64.pyd',
  '    |   |-- html',
  '    |   |   |-- clean.cp37-win_amd64.pyd',
  '    |   |   |-- diff.cp37-win_amd64.pyd',
  '    |   |-- isoschematron',
  '    |       |-- resources',
]

概述

毕业前做的小玩意,今天发现居然还能继续使用,孔夫子二手书采集软件可以将您本地的ISBN全部批量查询书籍信息,并切割保存到本地文件。可查询出版社、出版时间、在售/已售数量、可查询前五本的书籍信息

支持多线程采集
在这里插入图片描述

支持质量筛选、价格排序
在这里插入图片描述
原数据预览图
在这里插入图片描述

处理后的数据预览图
在这里插入图片描述

部分核心逻辑

Vb工程图

新建绘制一个VB视图
在这里插入图片描述
导出UI代码
在这里插入图片描述

数据导入与读取

def Command4_Cmd(self):
	global daoru_state
	# 打开文件选择对话框
	file_path = filedialog.askopenfilename(filetypes=[('Excel Files', '*.xlsx')])
	if file_path:
	# 加载Excel文件
	wb = load_workbook(filename=file_path)
	
	# 处理Excel文件
	# ...
	# 保存Excel文件到本地路径
	wb.save('file/output.xlsx')
	daoru_state=1
	# 提示用户导入成功
	#获取行数
	# 加载Excel文件
	wb = load_workbook(filename='file/output.xlsx')
	# 获取Sheet1工作表
	ws = wb.active
	# 获取行数
	row_count = ws.max_row
	self.Text3Var.set(row_count)

下拉框选择参数

self.style.configure('TLabel5.TLabel', anchor='w', font=('宋体', 9))
self.Label5 = Label(self.Frame4, text='价格:', style='TLabel5.TLabel')
self.Label5.place(relx=0.077, rely=0.234, relwidth=0.234, relheight=0.182)

self.style.configure('TLabel6.TLabel', anchor='w', font=('宋体', 9))
self.Label6 = Label(self.Frame4, text='品相:', style='TLabel6.TLabel')
self.Label6.place(relx=0.077, rely=0.584, relwidth=0.196, relheight=0.182)

self.Combo2List = ['默认', '价格从低到高', '价格从高到低']
self.Combo2Var = StringVar(value='默认')
self.Combo2 = Combobox(self.Frame4, text='默认', textvariable=self.Combo2Var,
values=self.Combo2List, font=('宋体', 9))
self.Combo2.place(relx=0.383, rely=0.234, relwidth=0.541, relheight=0.146)

设置线程

stop_threads = False  # 全局变量,控制线程的停止
# 总行数
total_rows = ws.max_row
# 线程数
num_threads = int(self.Text4Var.get())
# 每个线程处理的行数
rows_per_thread = math.ceil(total_rows / num_threads)
# 创建线程
threads = []
for i in range(num_threads):
# random_number = random.randint(1, )
start_row = i * rows_per_thread + 1
end_row = min((i + 1) * rows_per_thread, total_rows)
t = threading.Thread(target=process_rows,args=(start_row, end_row, table, self, order, quality, int(requests_spped)))
threads.append(t)

# 启动线程
for t in threads:
t.start()

# 将全局变量设置为False,表示线程不再执行
global stop_threads
stop_threads = False
# # 等待所有线程结束

使用方法

下载软件

下载压缩包后,解压到桌面,双击软件打开
在这里插入图片描述
在这里插入图片描述

授权

输入授权码123456,完成授权验证
在这里插入图片描述

导入文件

找到演示文件夹,里面有预置数据,你可以根据格式替换成自己的
在这里插入图片描述

在这里插入图片描述

等待数据处理完成
在这里插入图片描述

预览处理后的数据

中间可以随时点击停止
在这里插入图片描述

打开文件夹

在这里插入图片描述

在这里插入图片描述

最后

如果你有定制需求请私信联系我,下载附件前请查看演示视频

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1328703.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【matlab】绘制横状双组渐变柱状图

【matlab】绘制横状双组渐变柱状图

Frida07 - dexdump核心源码分析

项目地址 https://github.com/hluwa/frida-dexdump 代码解析 项目中的核心函数是 searchDex: function searchDex(deepSearch) {var result [];Process.enumerateRanges(r--).forEach(function (range) {try {....} catch (e) {}});return result; }里面用了一…

OpenCV-Python(19):Canny边缘检测

目录 学习目标 Canny 边缘检测原理 1.噪声抑制(噪声去除) 2.梯度计算 3.非极大值抑制 4.双阈值检测(滞后阈值) 5.边缘连接 Canny 边缘检测步骤 Canny 边缘检测的OpenCV实现 不同阈值的边缘检测效果 学习目标 了解Canny边缘检测的概念学习掌握函数cv2.Canny()的用法 …

Django(二)

1.django框架 1.1 安装 pip install django3.21.2 命令行 创建项目 cd 指定目录 django-admin startproject 项目名mysite ├── manage.py [项目的管理工具] └── mysite├── __init__.py├── settings.py 【配置文件,只有一部分…

电子科大软件测试~第三次作业

第三次作业 第一题 采用JUnit软件测试框架进行测试程序编程,实现对下面java程序进行单元测试,找出其中缺陷。然后修改缺陷,直到通过单元测试,给出测试程序脚本和运行结果界面。 public class getMax {public int get_max(int x…

Redis实现日榜|直播间榜单|排行榜|Redis实现日榜01

前言 直播间贡献榜是一种常见的直播平台功能,用于展示观众在直播过程中的贡献情况。它可以根据观众的互动行为和贡献值进行排名,并实时更新,以鼓励观众积极参与直播活动。 在直播间贡献榜中,每个观众都有一个对应的贡献值&#…

这样使用云渲染又快又省钱

我们都知道使用云渲染是要钱的,而且渲染的时间越久,需要的渲染费越多,哪么如何又快又省钱的拿到效果图呢?用炫云的渲染质量,保准让你使用云渲染渲染效果图又快又省钱。 我们使用炫云的时候,根据自己的需求…

输入框获取焦点

Entry Component struct Test {build() {Row() {Column({ space: 5 }) {//Text("自定义样式").customStyles(20,Color.Yellow).backgroundColor("#36D").padding(10).borderRadius(30)TextInput({placeholder: "获取焦点"}).borderColor(Color.Y…

LLM微调(四)| 微调Llama 2实现Text-to-SQL,并使用LlamaIndex在数据库上进行推理

Llama 2是开源LLM发展的一个巨大里程碑。最大模型及其经过微调的变体位居Hugging Face Open LLM排行榜(https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard)前列。多个基准测试表明,就性能而言,它正在接近GPT-3.5…

图灵日记之java奇妙历险记--数据类型与变量运算符

目录 数据类型与变量字面常量数据类型变量语法格式整型变量浮点型变量字符型变量希尔型变量类型转换自动类型转换(隐式)强制类型转换(显式) 类型提升不同数据类型的运算小于4字节数据类型的运算 字符串类型 运算符算术运算符关系运算符逻辑运算符逻辑与&&逻辑或||逻辑非…

案例125:基于微信小程序的个人健康数据管理系统的设计与实现

文末获取源码 开发语言:Java 框架:SSM JDK版本:JDK1.8 数据库:mysql 5.7 开发软件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序开发软件:HBuilder X 小程序…

【论文阅读】FreeU: Free Lunch in Diffusion U-Net

FreeU: 无需训练直接提升扩散模型生成效果。 paper:https://arxiv.org/abs/2309.11497 code:GitHub - ChenyangSi/FreeU: FreeU: Free Lunch in Diffusion U-Net 1. 介绍 贡献: •研究并揭示了U-Net架构在扩散模型中去噪的潜力&#xff0…

目标检测入门体验,技术选型,加载数据集、构建机器学习模型、训练并评估

Hi, I’m Shendi 1、目标检测入门体验,技术选型,加载数据集、构建机器学习模型、训练并评估 在最近有了个物体识别的需求,于是开始学习 在一番比较与询问后,最终选择 TensorFlow。 对于编程语言,我比较偏向Java或nod…

vue关闭当前路由页面并跳转到其父页面

1.dom中添加关闭或取消按钮 <el-button type"primary" class"blueLinearbg cancelBtn" click"cancel" >取 消</el-button>2.cancel方法中 /*取消或关闭*/cancel(){this.$store.dispatch("tagsView/delView", this.$route)…

state的保留与重置

让组件状态保留的情况&#xff1a; 让组件状态重置的3种情况&#xff1a;

[NISACTF 2022]easyssrf

[NISACTF 2022]easyssrf wp ssrf 的题目&#xff0c;提示了会使用 curl 连接输入的网站并返回响应包。 测试连接百度 直接在输入框中写 www.baidu.com 是无法连接的&#xff0c;需要在前面加入 http 或者 https &#xff0c;因为 curl 的使用方式就是&#xff1a; curl htt…

从0到1部署gitlab自动打包部署项目

本文重点在于配置ci/cd打包 使用的是docker desktop 第一步安装docker desktop Docker简介 Docker 就像一个盒子&#xff0c;里面可以装很多物件&#xff0c;如果需要某些物件&#xff0c;可以直接将该盒子拿走&#xff0c;而不需要从该盒子中一件一件的取。Docker中文社区、…

Ubuntu 常用命令之 man 命令用法介绍

&#x1f4d1;Linux/Ubuntu 常用命令归类整理 man命令在Ubuntu系统中是一个非常重要的命令&#xff0c;它用于查看系统的手册页。手册页是Linux和Unix系统中的一种在线文档&#xff0c;用于描述系统中的命令、函数、配置文件等的详细信息。 man命令的基本格式是 man [选项] …

光伏企业如何能够提高光伏电站的建设效率?

随着全球对可再生能源需求的日益增长&#xff0c;光伏行业的发展势头强劲。然而&#xff0c;光伏电站建设过程中往往存在效率低下的问题&#xff0c;这不仅影响了电站的运营成本&#xff0c;也制约了整个行业的发展速度。因此&#xff0c;如何提高光伏电站的建设效率&#xff0…

DshanMCU-R128s2 Hello World!

本文将介绍使用 R128 开发板从串口输出 Hello World 的方式介绍 SDK 软件开发流程。 载入方案 我们使用的开发板是 R128-Devkit&#xff0c;需要开发 C906 核心的应用程序&#xff0c;所以载入方案选择r128s2_module_c906 $ source envsetup.sh $ lunch_rtos 1编辑程序 打…