【自动化】一共获取6600多公司信息【逆向】一页15还加密。

一、【逆向】一页15还加密。

二、【自动化】一共获取6600多公司信息

三、对于两种方式我喜欢第二种自动化

from DrissionPage import ChromiumPage, ChromiumOptions
import time
# chrome:version
co = ChromiumOptions().set_paths(browser_path=r"C:\Users\lenovo\AppData\Local\Google\Chrome\Application\chrome.exe")
page = ChromiumPage(co)page.get("https://www.kanzhun.com/search/?query=%E5%85%AC%E5%8F%B8&type=0")
page.ele('x://div[@class="btn-link"]').click()
time.sleep(1)result = []
times = 0
i=0
for j in range(50):print(f"已滑动{i}次了")page.run_js('setInterval(function(){window.scrollBy(0,100)},100)')i+=1len_result = len(result)print(f"公司总数为{len_result}")for tag in page.eles('x://div[@class="list-item"]',timeout=5):title = tag.ele('x://div[@class="middle"]/a').textdec = tag.ele('x://div[@class="middle"]/div[@class="desc"]').textbusiness_info=tag.ele('x://div[@class="business-info"]').texturl= tag.ele('x://a[@class="title"]').attr('href')print(title,dec,business_info,url)result.append(url)newlen_result = len(result)if newlen_result==len_result:times += 1else:times=0if times>5:print("已加载完毕")break

四、【逆向】一页15还加密。

1.通过断点调试获得B KIV参数

const fs = require('./js2.js')
const CryptoJS = require('crypto-js')
window = global;
var zy;
!function(i) {"use strict";var e, t, n, r, o, i = {}, u = {};function c(e) {var t = u[e];if (void 0 !== t)return t.exports;var n = u[e] = {id: e,loaded: !1,exports: {}};return i[e].call(n.exports, n, n.exports, c),n.loaded = !0,n.exports}zy = cc.m = i,c.amdO = {},e = [],c.O = function(t, n, r, o) {if (!n) {var i = 1 / 0;for (l = 0; l < e.length; l++) {n = e[l][0],r = e[l][1],o = e[l][2];for (var u = !0, f = 0; f < n.length; f++)(!1 & o || i >= o) && Object.keys(c.O).every((function(e) {return c.O[e](n[f])})) ? n.splice(f--, 1) : (u = !1,o < i && (i = o));if (u) {e.splice(l--, 1);var a = r();void 0 !== a && (t = a)}}return t}o = o || 0;for (var l = e.length; l > 0 && e[l - 1][2] > o; l--)e[l] = e[l - 1];e[l] = [n, r, o]},c.n = function(e) {var t = e && e.__esModule ? function() {return e.default}: function() {return e};return c.d(t, {a: t}),t},n = Object.getPrototypeOf ? function(e) {return Object.getPrototypeOf(e)}: function(e) {return e.__proto__},c.t = function(e, r) {if (1 & r && (e = this(e)),8 & r)return e;if ("object" == typeof e && e) {if (4 & r && e.__esModule)return e;if (16 & r && "function" == typeof e.then)return e}var o = Object.create(null);c.r(o);var i = {};t = t || [null, n({}), n([]), n(n)];for (var u = 2 & r && e; "object" == typeof u && !~t.indexOf(u); u = n(u))Object.getOwnPropertyNames(u).forEach((function(t) {i[t] = function() {return e[t]}}));return i.default = function() {return e},c.d(o, i),o},c.d = function(e, t) {for (var n in t)c.o(t, n) && !c.o(e, n) && Object.defineProperty(e, n, {enumerable: !0,get: t[n]})},c.f = {},c.e = function(e) {return Promise.all(Object.keys(c.f).reduce((function(t, n) {return c.f[n](e, t),t}), []))},c.u = function(e) {return "js/" + {189: "wangeditor",536: "vod-js-sdk-v6"}[e] + "-" + {189: "5e0d5d",536: "a04632"}[e] + ".js"},c.miniCssF = function(e) {},c.g = function() {if ("object" == typeof globalThis)return globalThis;try {return this || new Function("return this")()} catch (e) {if ("object" == typeof window)return window}}(),c.o = function(e, t) {return Object.prototype.hasOwnProperty.call(e, t)},r = {},o = "kz-ssr-pc:",c.l = function(e, t, n, i) {if (r[e])r[e].push(t);else {var u, f;if (void 0 !== n)for (var a = document.getElementsByTagName("script"), l = 0; l < a.length; l++) {var s = a[l];if (s.getAttribute("src") == e || s.getAttribute("data-webpack") == o + n) {u = s;break}}u || (f = !0,(u = document.createElement("script")).charset = "utf-8",u.timeout = 120,c.nc && u.setAttribute("nonce", c.nc),u.setAttribute("data-webpack", o + n),u.src = e),r[e] = [t];var d = function(t, n) {u.onerror = u.onload = null,clearTimeout(p);var o = r[e];if (delete r[e],u.parentNode && u.parentNode.removeChild(u),o && o.forEach((function(e) {return e(n)})),t)return t(n)}, p = setTimeout(d.bind(null, void 0, {type: "timeout",target: u}), 12e4);u.onerror = d.bind(null, u.onerror),u.onload = d.bind(null, u.onload),f && document.head.appendChild(u)}},c.r = function(e) {"undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {value: "Module"}),Object.defineProperty(e, "__esModule", {

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

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

相关文章

【MySQL】MySQL表的增删改查(初阶)

欢迎关注个人主页&#xff1a;逸狼 创造不易&#xff0c;可以点点赞吗~ 如有错误&#xff0c;欢迎指出~ 目录 表内容操作 插入内容 按顺序插入 指定某些列插入 一次插入多行记录 插入时间 查询表内容 全列查询 指定列查询 指定表达式查询 用as取别名 ​编辑 去重查询 排序查询…

不同搜索引擎蜘蛛的功能、‌抓取策略与技术实现差异探究

搜索引擎作为互联网信息检索的重要工具&#xff0c;‌其核心功能依赖于背后的“蜘蛛”程序。‌这些蜘蛛程序负责访问互联网上的各种内容&#xff0c;‌并建立索引数据库&#xff0c;‌以便用户能够快速准确地找到所需信息。‌然而&#xff0c;‌不同搜索引擎的蜘蛛在功能、‌抓…

Axios介绍;前后端分离开发的介绍;YAPI的使用;Vue项目简介、入门;Elementui的使用;nginx介绍

1 Ajax 1.1 Ajax介绍 1.1.1 Ajax概述 我们前端页面中的数据&#xff0c;如下图所示的表格中的学生信息&#xff0c;应该来自于后台&#xff0c;那么我们的后台和前端是互不影响的2个程序&#xff0c;那么我们前端应该如何从后台获取数据呢&#xff1f;因为是2个程序&#xf…

仿Muduo库实现高并发服务器——EventLoop模块

我刚开始看这个模块时&#xff0c;也是看不明白&#xff0c;什么是事件管理模块。 此时此刻&#xff0c;大领导的背影&#xff0c;还是那么清晰。结合故事模块&#xff0c;慢慢理。 EventLoop模块 成员&#xff1a; 绿色&#xff1a; 利用智能指针对new出来的对象进行管理&…

武汉流星汇聚:亚马逊赋能中小企业,跨境电商市场举足轻重地位稳

在全球经济一体化的浪潮中&#xff0c;跨境电商作为推动国际贸易的重要力量&#xff0c;正以前所未有的速度发展。在这场全球性的商业竞赛中&#xff0c;亚马逊以其卓越的市场表现、强大的技术实力和深厚的品牌影响力&#xff0c;稳居跨境电商市场的领头羊地位&#xff0c;其举…

多任务下载工具.exe

关键代码 void DownloadTask::StartDownload(const QUrl url,QFile *file,qint64 startPoint/* 0 */,qint64 endPoint/* -1 */) {if( NULL file )return;m_HaveDoneBytes 0;m_StartPoint startPoint;m_EndPoint endPoint;m_File file;//根据HTTP协议&#xff0c;写入RANGE…

Vue3基础2

1.Hooks 就是进行数据的封装&#xff0c;同一种类型的 数据 方法 计算属性 &#xff0c;放在一起 命名规范 use功能名称.ts 或.js 创建一个文件夹 hooks 1.useDog.ts import { reactive,onMounted } from "vue"; import axios from "axios";export def…

[数据集][目标检测]红外场景下车辆和行人检测数据集VOC+YOLO格式19069张4类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;19069 标注数量(xml文件个数)&#xff1a;19069 标注数量(txt文件个数)&#xff1a;19069 标…

SQL AI 工具:颠覆数据库管理与分析的创新力量

一、SQL AI 工具的兴起与发展 在当今数字化的时代&#xff0c;数据量呈现爆炸式增长&#xff0c;企业和个人对于高效管理和分析数据的需求日益迫切。传统的数据库管理和查询方式&#xff0c;对于非技术人员来说存在较高的门槛&#xff0c;操作复杂且耗时。这一背景为 SQL AI 工…

VMware安装Ubuntu20.04

1. 下载 整理的镜像链接 阿里网盘&#xff1a; 阿里云盘分享 提取码: l7y1 2. 新建虚拟机向导 选择自定义&#xff0c;然后下一步。 默认配置&#xff0c;下一步。 选择稍后安装操作系统&#xff0c;下一步。 选择操作系统Linux&#xff0c;版本Ubuntu64位&#xff0c;下一…

OCC笔记:Windows下OCC的编译

一、源码下载 进OCC官网下载https://dev.opencascade.org/release即可&#xff0c;或直接Clone它的Git库https://dev.opencascade.org/resources/git_repository&#xff0c;本文用的源码库版本为7.4.0&#xff08;我本机安装的VS2013&#xff0c;我又想用到AIS_ViewCube&…

AList嵌入动态验证码实现动态校验

前言 晓杰利用ALists创建了个网盘资源站&#xff0c;想着如何增加个动态验证码进行验证后才能进行访问下载&#xff0c;刚开始利用了固定的验证码&#xff0c;用户可以通过JS代码中进行绕过或直接拿到验证码&#xff0c;经过晓杰多次优化&#xff0c;最终版本支持动态获取验证…

Linux(面试篇)

目录 什么是Linux 什么是Linux内核&#xff1f; Linux的基本组件是什么&#xff1f; Bash和Dos之间基本区别是什么&#xff1f; 什么是Root账户 什么是Bash? 什么时CLI? Linux的目录结构时怎样的&#xff1f; 什么是硬链接和软链接&#xff1f; 什么叫CC攻击&#…

Ajax-04

一.同步代码和异步代码 同步代码&#xff1a;浏览器按照我们书写代码的顺序一行一行地执行程序的。在上一行完成后会执行下一行。 同步代码&#xff1a;逐行执行&#xff0c;需原地等待结果&#xff0c;才继续向下执行 异步代码&#xff1a;可以在执行一个可能长期运行的任务…

docker容器图形化管理之Portainer

docker容器轻量级图形页面管理之Portainer 1、查看portainer镜像 [rootlocalhost ~]# docker search portainer 2、下载portainer镜像 [rootlocalhost ~]# docker pull portainer/portainer #选择喜欢的portainer风格镜像下载 3、启动dockerui容器 [rootlocalhost ~]# doc…

昂科烧录器支持Melexis迈来芯的位置传感器MLX90365KDC

芯片烧录行业领导者-昂科技术近日发布最新的烧录软件更新及新增支持的芯片型号列表&#xff0c;其中Melexis迈来芯的位置传感器MLX90365KDC已经被昂科的通用烧录平台AP8000所支持。 MLX90365KDC是第II代Triaxis位置传感器IC。 这款单片器件可凭借其表面的集磁点(IMC)&#xf…

游戏服务器架构:基于匿名函数的高性能异步定时器系统

作者&#xff1a;码客&#xff08;ygluu 卢益贵&#xff09; 关键词&#xff1a;游戏服务器架构、匿名函数、高性能、异步定时器。 一、前言 本文主要介绍适用于MMO/RPG游戏服务端的、基于匿名函数做定时器回调函数的、高性能异步触发的定时器系统的设计方案&#xff0c;以解决…

vue3模拟生成并渲染10万条数据,并实现本地数据el-table表格分页

效果图&#xff1a; 一点都不卡 话不多说&#xff0c;直接上码 <template><div class"container"><h3 class"table-title">el表格 分页</h3><el-table :data"tableList.slice((currentPage-1)*pageSize, currentPage*p…

Python测试框架Pytest的使用

pytest基础功能 pytset功能及使用示例1.assert断言2.参数化3.运行参数4.生成测试报告5.获取帮助6.控制用例的执行7.多进程运行用例8.通过标记表达式执行用例9.重新运行失败的用例10.setup和teardown函数 pytset功能及使用示例 1.assert断言 借助python的运算符号和关键字实现不…

Azure OpenAI citations with message correlation

题意&#xff1a;“Azure OpenAI 引用与消息关联” 问题背景&#xff1a; I am trying out Azure OpenAI with my own data. The data is uploaded to Azure Blob Storage and indexed for use with Azure AI search “我正在尝试使用自己的数据进行 Azure OpenAI。数据已上传…