- 博客(42)
- 收藏
- 关注
原创 使用python代码制作一个背单词的功能
print(f"成功添加单词:{new_word},翻译:{new_translation}")print(f"错误!print("进度文件损坏,尝试从备份中恢复。user_input = input("请输入中文翻译:")print(f"保存进度时出现错误:{e}")print("进度已成功保存。print(f"单词:{word}")"watermelon": "西瓜"print("正确!"banana": "香蕉","orange": "橙子","apple": "苹果","grape": "葡萄",
2024-12-20 19:05:54
740
原创 关于如何避免反爬虫机制?
添加其他请求头信息:除User - Agent外,还可以添加 Accept 、 Accept - Language 、 Referer 等信息,使请求更像真实用户发起的。- 修改User - Agent:每个浏览器访问网页时都会发送包含User - Agent的请求头,表明浏览器类型和版本等信息。- 付费代理IP服务:选择可靠的付费代理IP服务提供商,获取高质量的代理IP资源。- 免费代理IP:从网上搜索免费代理IP资源,但免费代理的稳定性和速度较差,且可能存在安全风险。5. 处理Cookies。
2024-12-15 20:37:01
2035
原创 如何检测和应对网站的反爬虫机制?
分布式爬虫:当单个IP或请求被限制时,使用分布式爬虫架构(如Scrapy - Redis),通过多个节点分散请求,降低单个节点被识别为爬虫的风险。- 分析页面内容异常:如果获取的页面内容为空、不完整或包含特定的反爬虫提示信息(如“您的访问过于频繁,请稍后再试”),可能被限制访问。- 调整请求频率:除了之前提到的控制访问频率,还可以根据网站的繁忙程度动态调整。- 多样化User - Agent:准备多个不同的User - Agent,每次请求时随机选择,模拟不同类型的浏览器和设备访问。
2024-12-15 20:36:49
1467
原创 如何避免被网站检测到使用爬虫?
完整请求头信息:除User - Agent外,补充 Accept 、 Accept - Language 、 Referer 等请求头字段,使其与真实浏览器请求头相似。- 避免过度请求数据:只获取所需数据,不要对网站的所有资源都发起请求,减少对服务器资源的占用,降低被检测到的可能性。- 使用高质量代理IP:选择可靠的付费代理服务,这些代理IP通常有更好的匿名性和稳定性,降低被识别为爬虫的风险。- 多样化User - Agent:准备多组常见浏览器的User - Agent字符串,每次请求时随机选用。
2024-12-15 20:36:36
633
原创 Python 爬虫进阶:突破限制与高效数据抓取
通过掌握动态页面爬取、反爬虫机制应对、数据抓取流程优化以及大规模数据爬取的分布式爬虫技术,能够让我们在面对复杂多变的网络环境和海量数据需求时游刃有余。将已抓取的数据存储在本地(如使用 Redis 缓存数据库或简单的文件缓存),下次请求时先检查缓存中是否存在,若存在则直接使用,避免重复抓取和网络资源浪费。其基本原理是:将起始 URL 放入 Redis 队列,各个爬虫节点从队列中获取 URL 进行抓取,抓取到的新 URL 又放回队列供其他节点继续抓取,同时可以设置去重机制避免重复抓取。三、反爬虫机制应对策略。
2024-12-14 01:38:08
1689
原创 Python 爬虫:从入门到实践
Python 爬虫是一门非常实用的技术,通过本文的介绍,读者应该对 Python 爬虫的基本原理、常用库以及实际应用有了初步的了解。然而,这仅仅是一个开始,在实际的爬虫开发中,还会遇到各种各样的问题和挑战,需要不断地学习和实践。希望大家能够在合法合规的前提下,利用 Python 爬虫技术挖掘网络数据的价值,为自己的学习、研究或工作提供有力的支持。4. Scrapy:一个功能强大的爬虫框架,提供了完善的爬虫架构,包括调度器、下载器、解析器等组件,适用于大规模、复杂的爬虫项目,能够提高开发效率和爬虫的稳定性。
2024-12-14 01:37:39
563
原创 python 习题
执行程序:打开命令行窗口(在Windows中为“命令提示符”或“PowerShell”,在MacOS和Linux中为“终端”),切换到保存 hello.py 文件的目录,然后输入 python hello.py (如果安装了多个版本的Python,可能需要使用 python3 hello.py )即可执行程序。- 运行程序:编写完代码后,点击“Run”菜单中的“Run Module”或直接按F5键,即可在IDLE中运行程序,运行结果会显示在Python Shell窗口中。
2024-12-12 12:48:48
309
原创 Python 习题9
例如, {1, 2, 3} | {3, 4, 5} 的结果是 {1, 2, 3, 4, 5}。6. print(1, 2, 3, sep=':') 的输出结果为 1:2:3 , sep 参数指定了输出时每个元素之间的分隔符。例如, {1, 2, 3} - {3, 4, 5} 的结果是 {1, 2}。例如, {1, 2, 3} & {3, 4, 5} 的结果是 {3}。6.Python 3.x 语句 print(l, 2, 3, sep=’:’)的输出结果为?Python运算符中用来计算整商的是?
2024-12-12 12:48:34
239
原创 使用python制作简单 Excel 成绩查询系统
制作简单 Excel 成绩查询系统的流程包括查询系统要求。7.小于1或大于100,查无此人。8.选作,输入字符,查无此人。6.加密(密码都是123)
2024-12-11 17:56:52
147
原创 python 习题
所以先调用 gcd(m, n) 函数得到最大公约数,然后通过 m * n // gcd(m, n) 计算最小公倍数。通过不断地用 n 和 m % n 替换 m 和 n ,直到 n 为0,此时 m 就是最大公约数。2.编写并测试函数gcd(m, n)和lcm(m, n),功能是求两个整数的最大公约数和最小公倍数。2. gcd(m, n) 和 lcm(m, n) 函数。print("最大公约数:", gcd(m, n))print("最小公倍数:", lcm(m, n))2. gcd(m, n) 函数。
2024-12-11 17:56:27
491
原创 网络安全需要具备哪些基础知识
掌握常见的加密算法,如对称加密算法(如 AES)、非对称加密算法(如 RSA)、哈希算法(如 MD5、SHA-1、SHA-256 等)。1. 熟悉常见的网络安全工具,如漏洞扫描器(如 Nessus、OpenVAS)、入侵检测系统(IDS)、入侵防御系统(IPS)等。2. 了解常见的 Web 安全漏洞,如 SQL 注入、跨站脚本攻击(XSS)、跨站请求伪造(CSRF)、文件上传漏洞等。- 熟悉常见操作系统(如 Windows、Linux、macOS)的基本操作、文件系统、用户管理等。
2024-12-10 00:55:00
247
原创 Python 习题
2.生成10个1~100之间的随机整数,对于其中重复的数字,只保留一个,把其余相同的数字去掉,并由大到小排序输出。(使用集合完成列表的去重操作,并将最终的列表由大到小排序输出。# (3)获取元组第2 - 3个元素并输出(Python中切片是左闭右开区间,实际获取第2个和第3个元素)# (4)使用for循环遍历输出元组。(3)获取元素第2-3个元素并输出。# (2)获取元组第2个元素并输出。(2)获取元组第2个元素并输出。# (1)计算元组长度并输出。(1)计算元组长度并输出。# 由大到小排序输出。
2024-12-09 15:22:51
320
原创 Python 习题
2.通过input引导用户输入一个姓名,判断该姓名是否存在于列表names中,names = ["xi","eric","alvin","george"]。# (4)将2,3,4切片出来(由于前面操作改变了原列表,这里按当前情况找对应元素切片)1. 有一个列表s1 = [1, 2, 3, 4, 5],请编写代码完成下面的功能。# (5)s1[-3:-5:-1]的结果。# (1)在s1的元素3后面插入300。(5)s1[-3:-5:-1]的结果。# (6)s1[-3:]的结果。(6)s1[-3:]的结果。
2024-12-09 15:19:21
268
原创 python绘制无向网络图
添加边,同样可以逐个添加,也可以传入边的列表(每条边以元组形式表示,包含两个节点)# 添加节点,可以逐个添加,也可以传入节点列表。使用python绘制一个无向网络图。# 创建一个无向图对象。
2024-12-09 15:03:23
170
原创 spark 问题
filter 操作是根据给定的条件筛选RDD中的元素,符合条件的元素组成新的RDD。例如,对一个存储数字的RDD,通过 filter(x => x > 5) 操作筛选出大于5的数字组成新的RDD。- map 操作是对RDD中的每个元素应用一个函数,生成一个新的元素,所有新元素组成新的RDD。比如对一个存储整数的RDD,通过 map(x => x * 2) 操作将每个整数乘以2得到新的RDD。例如,在一个处理日志文件的应用中,RDD存储了日志数据,这些数据不会被更改。2. RDD的两种操作。
2024-12-09 14:57:39
120
原创 spark例题
/ 使用flatMap,先对列表每个元素应用一个函数(这里是生成以该元素为起始的一个小列表),然后再扁平化为一个大列。// 使用flatten方法将嵌套的列表扁平化为一个单一列表。1.在scala环境中创建一个函数式的函数,并调用该函数。// 定义一个接受两个整数参数,返回它们和的函数。// 有嵌套结构的列表,例如列表里包含列表。3.使用flatMap方法编写一个小代码。2.使用flat方法编写一个小代码。// 调用函数并传入参数。
2024-12-09 14:54:04
300
原创 Spark 作业
/ 使用to方法创建等差列表,效果类似,这里创建从2到8步长为2的列表(左闭右闭区间)// 使用Range创建等差列表,这里创建从1到5步长为1的列表(左闭右闭区间)2.创建一个列表(List)变量,并使用head和tail方法访问列表变量中的元素值。4.使用Range创建一个等差列表变量,使用to方法创建一个等差列表变量。// 访问数组元素,例如访问索引为2的元素(索引从0开始)// 使用tail获取除第一个元素外的其余元素组成的列表。3.使用Nil空列表创建一个列表变量,并访问该变量中的元素值。
2024-12-09 14:48:28
265
原创 spark作业
2.使用print()或者println()向文件写入内容。3.使用scala.io.Source实现对文件的读取。1.在虚拟机中编写代码实现s插值,f插值。
2024-12-09 14:44:35
81
原创 Kafka分布式集群搭建
启动Kafka集群。(1)方法1:[hadoop@hadoop1 app]$scp -r kafka_2.12-2.8.1 hadoop@hadoop2:/home/hadoop/app/[hadoop@hadoop1 app]$scp -r kafka_2.12-2.8.1 hadoop@hadoop3:/home/hadoop/app/(3)Kafka安装目录分发到集群其他节点将hadoop1节点中配置好的Kafka安装目录分发给hadoop2和hadoop3节点,具体操作如下所示。
2024-12-09 14:23:46
940
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人