IntelliScraper 更新 --可自定义最大输出和相似度 支持Html的内容相似度匹配

场景

之前我们在使用IntelliScraper 初代版本的时候,不少人和我反馈一个问题,那就是最大输出结果只有50个,而且还带有html内容,不支持自动化,我声明一下,自动化目前不会支持,以后也不会支持,因为法律的问题,所以数据的前置和后置处理是需要自行处理,如有特殊需求,可联系我。
在这里插入图片描述

更新内容

最大关键字和相似度

此次更新,则是更新了最大关键字和相似度可以自己设置,你可以自己随意设置这些,直到拿到你想要的,原先的写法可能是

wanted_list = ['北堂飘霜']
scraper = WebScraper(wanted_list, url='https://blog.csdn.net/weixin_45487988?spm=1010.2135.3001.5343')
results = scraper.build()
for result in results:
    print(result)

结果和相似度都是内置的,你无法决定,结果最多50个,相似度0.7,更新之后,现在你的写法可能是:

wanted_list = ['北堂飘霜']
scraper = WebScraper(wanted_list, url='https://blog.csdn.net/weixin_45487988?spm=1010.2135.3001.5343',max_reasult=100,similarity=0.6)
results = scraper.build()
for result in results:
    print(result)

你自己可以随意设置,并且对结果进行清洗。代码已经上传至github。
IntelliScraper

更新内容暂时没有发镜像,是因为要经过充分测试和考虑,后面如果更新镜像,令行通知!

支持Html的内容相似度匹配

如果说有些网页可能设置了延时加载机制,或者说在你请求的时候,没有完全加载元素,不用担心,我们现在提供了html的内容相似度匹配策略,该策略可以直接拿出两段html进行相似度匹配,代码可能是:

file_path = '/h10.html'  # 替换为HTML文件的路径
with open(file_path, 'r', encoding='utf-8') as file:
    html_content = file.read()


file_path = '/h11.html'  # 替换为HTML文件的路径
with open(file_path, 'r', encoding='utf-8') as file:
    target_html = file.read()

# 使用函数寻找相似元素
similar_elements = find_similar_elements(html_content, target_html, 0.4)
print(len(similar_elements))
# 打印结果
all_link = []
for el in similar_elements:
    # print("------")
    print(el.text)
    # print(el.__str__())
    # print("------")
    # 提取链接
    unique_links = extract_unique_links(el.__str__())
    # 将链接写入文件
    all_link.append(unique_links)
    # print(unique_links)
write_links_to_file(all_link, '/unique_links.txt')

这段代码很好的演示了如何在h10中找到h11的相似元素,在这里我做了后续数据清洗的工作,它能够很好的达到我的预期,同样的,并没有发镜像,待其彻底稳定后,会更新镜像。

结束

IntelliScraper 更新 --可自定义最大输出和相似度 支持Html的内容相似度匹配,你学废了吗?赶紧用起来,觉得好用,不要忘记点个star支持一下呦!!!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

02 数据库管理 数据表管理

文章目录 数据库管理数据表管理基础数据类型表的基本操作 数据库管理 查看已有库 show databases; 创建库 create database 库名 [character set utf8]; e.g. 创建stu数据库,编码为utf8 create database stu character set utf8; create database stu charsetutf8;…

第二十七回 武松威镇安平寨 施恩义夺快活林-人人爱用的Python编程语言

张青提议武松不要去牢城营受苦,可以把公差杀掉然后去二龙山入伙鲁智深。武松却坚持他的道义原则,不愿意伤害一路上照顾他的两位公人。张青尊重他的决定,救醒了两位公人。 张青、孙二娘和武松以及两位公人一起喝酒吃饭,张青还向武…

python+django高校教务选课成绩系统v0143

系统主要实现了以下功能模块: 本课题使用Python语言进行开发。基于web,代码层面的操作主要在PyCharm中进行,将系统所使用到的表以及数据存储到MySQL数据库中 使用说明 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并…

leetcode:51.N皇后

起初会想到暴力,但是N不确定,所以不确定for的嵌套层数,所以我们采用回溯算法。 树形结构: 1.树的深度是第depth层 2.树的宽度是对每一行进行遍历 代码实现: 1.result是三维数组,一个棋盘是二维&#x…

KAJIMA CORPORATION CONTEST 2024(AtCoder Beginner Contest 340)ABCDEF 视频讲解

这场比较郁闷,C题短路,连续4次WA,导致罚时太多 A - Arithmetic Progression Problem Statement Print an arithmetic sequence with first term A A A, last term B B B, and common difference D D D. You are only given inputs for w…

蓝桥杯官网练习题(翻转)

问题描述 小蓝用黑白棋的 n 个棋子排成了一行,他在脑海里想象出了一个长度为 n 的 01 串 T,他发现如果把黑棋当做 1,白棋当做 0,这一行棋子也是一个长度为 n 的 01 串 S。 小蓝决定,如果在 S 中发现一个棋子…

英伟达进军定制芯片领域,有望“再造一个Arm”?

隔夜美股AI总龙头英伟达收高3.58%,再创历史新高。该股本周上涨逾9%,今年迄今上涨45.7%。总市值站上1.78万亿美元,逼近亚马逊与谷歌。 消息面上,据媒体报道,据至少九位知情人士透露,英伟达正在建立一个新的业…

微服务学习 | Spring Cloud 中使用 Sentinel 实现服务限流

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站https://www.captainbed.cn/kitie。 目录 前言 通过代码实现限流 定义资源 通过代码定义资源 通过注解方式定义资源 定义限流规则 通过…

4核8g服务器能访问多少人?2024年测评

腾讯云轻量4核8G12M轻量应用服务器支持多少人同时在线?通用型-4核8G-180G-2000G,2000GB月流量,系统盘为180GB SSD盘,12M公网带宽,下载速度峰值为1536KB/s,即1.5M/秒,假设网站内页平均大小为60KB…

Zabbix6.x配置中文界面 解决乱码问题

Zabbix6.x配置中文界面 解决乱码问题 Zabbix6.x界面无法选择中文,通过安装语言包解决。后面也解决了zabbix6中文方块(乱码)问题。 配置中文语言包 系统中默认没有携带中文语言包,可以通过以下命令查看 localectl list-locales #…

编曲学习:旋律创作基础概念 和弦进行作曲 和弦外音使用 作曲技巧

旋律创作基础概念 和弦进行作曲 和弦外音使用 作曲技巧https://app8epdhy0u9502.pc.xiaoe-tech.com/live_pc/l_65be1ba7e4b064a83b92a3d7?course_id=course_2XLKtQnQx9GrQHac7OPmHD9tqbv文档https://app8epdhy0u9502.pc.xiaoe-tech.com/p/t_pc/course_pc_detail/camp_pro/cour…

奇异值分解(SVD)的应用——图像压缩

SVD方法是模型降阶的一类重要方法,本征正交分解(POD)和平衡截断(BT)都属于SVD类方法。 要想深入了解模型降阶技术,我们可以先从SVD的应用入手,做一个直观的了解。 1. SVD的定义和分类 我们想寻找…

nginx添加lua模块

目录 已安装了nginx,后追加lua模块nginx 重新编译知识参考: 从零安装一、首先需要安装必要的库(pcre、zlib、openssl)二、安装LUA环境及相关库 (LuaJIT、ngx_devel_kit、lua-nginx-module)注意:…

「云原生可观测团队」获选「InfoQ 年度技术内容贡献奖」

随着云原生、人工智能逐渐成为各行各业的创新生产力工具。可以预见,我们即将进入全新的智能化时代。随着数据成为新型生产要素,云和 AI 正走向深度融合。云原生通过提供大规模多元算力的高效供给,可观测成为业务创新的核心基础设施&#xff0…

Android---Jetpack Compose学习002

Compose 布局。Compose 布局的目标:1)实现高性能;2)让开发者能够轻松编写自定义布局;3)在 Compose 中,通过避免多次测量布局子级可实现高性能。如果需要进行多次测量,Compose 具有一…

数字孪生:构建未来智慧社区的关键技术

随着科技的快速发展,数字孪生技术作为构建未来智慧社区的关键技术,正逐渐受到广泛关注。数字孪生技术能够实现物理世界与数字世界的交互映射,为智慧社区的建设提供强有力的支持。本文将探讨数字孪生技术在构建未来智慧社区中的作用和意义&…

JavaIO读取C101.txt文件

一、split分割带空格的字符串(四种方法及其区别) 参考:https://blog.csdn.net/yezonghui/article/details/106455940 String str "a b c d";String[] arr1 str.split(" "); //仅分割一个空格 String[] arr2 str…

yo!这里是Linux线程保姆级入门介绍

目录 前言 Linux线程基础 线程概念 底层示意图 线程vs进程 Linux线程控制 创建线程 线程ID 线程终止 线程等待 线程分离 Linux线程互斥 背景概念 互斥量mutex 1.相关接口 2.实现原理 可重入vs线程安全 死锁 Linux线程同步 条件变量 生产者消费者模型 基于…

MySQL-索引(INDEX)

文章目录 1. 索引概述及优劣势2. 索引结构和不同引擎对索引的支持情况2.1 Btree2.2 Hash索引 3. 索引分类4. 索引语法5. 索引在什么情况下会失效?5.1 最左前缀法则5.2 范围查询5.3 索引列运算5.4 头部模糊查询5.5 OR连接条件5.6 字符串不加引号5.7 数据分布影响 6. …

【开源】SpringBoot框架开发考研专业课程管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 考研高校模块2.3 高校教师管理模块2.4 考研专业模块2.5 考研政策模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 考研高校表3.2.2 高校教师表3.2.3 考研专业表3.2.4 考研政策表 四、系统展示五、核…