乐之之

知而行乐,乐而行之,天道酬勤,学无止境。

随笔分类 -  python爬虫

常见反爬措施--动态字体反爬
摘要:通过对数据的获取,我们已经掌握了一些简单的反爬措施,但是获取到的数据都是加密的,无法直接读取其中的信息。那么我们该怎么解决呢? 只有通过对加密字体的解密,再将解密字体和加密字体进行replace即可。现在,我们还是以实习僧为例,来看一下其中的解密流程是怎样的。 一、解密前的了解。 首先,观察到数据改 阅读全文

posted @ 2023-03-26 19:14 乐之之 阅读(482) 评论(0) 推荐(0)

常见反爬措施--验证码反爬
摘要:在各类网站采用了各种各样的反爬虫措施后,其中还有一种就是验证码反爬虫。那么如何将各种各样的验证码进行识别,自动化模拟人类操作验证码点击呢,那么今天我们就来聊一下。 在验证码反爬的类型中,主要有图形验证码(图形和数字随机组成)、点触验证码(词语或四字成语组成)和滑块验证码等。在如今,验证码类型逐渐复杂 阅读全文

posted @ 2023-03-23 23:15 乐之之 阅读(622) 评论(0) 推荐(0)

常见反爬措施——ip反爬
摘要:在使用爬虫过程中经常会遇到这样的情况,爬虫最初运行还可以,正常爬取数据,但一杯茶的功夫就会出现报错,比如返回403Forbidden,这时打开网页可能会发现数据为空,原来网页端的信息并未显示,或提示您的IP访问频率太高,又或者弹出一个验证码需要我们去识别,再者过了一会又可以正常访问。 出现上述现象的 阅读全文

posted @ 2023-03-16 22:33 乐之之 阅读(453) 评论(0) 推荐(0)

常见反爬措施——ua反爬
摘要:UA伪装 在爬虫过程中许多网站都会存在一些反爬措施,有些防护措施不高,像ua反爬这种只检查浏览器信息的防护措施。简单介绍一下 一、User-Agent简介 用户代理(User-Agent),表示的是用户的浏览器相关信息,该反爬逻辑是通过服务器端验证请求头中的 User-Agent 参数,然后区分是爬 阅读全文

posted @ 2023-03-15 13:00 乐之之 阅读(443) 评论(0) 推荐(0)

scrapy框架图片爬取案例——以堆糖网为例
摘要:本节主要分享的是scrapy框架中关于图片类的简单爬取方法,在这里只需要用到三个文件: 1.setting.py进行scrapy抓取图片所用到的基础。 2.duitang_spider.py实现获取多出url进行翻页和数据处理。 3.pipelines.py对图片链家发起请求获取,设置图片名称,然后 阅读全文

posted @ 2023-02-26 22:21 乐之之 阅读(258) 评论(0) 推荐(0)

爬虫笔记【2】如何在爬虫中进行HTTP Basic Authentication所适合的用户名和密码认证?
摘要:登陆网页前遇到的要求输入用户名和密码的程序,通常称为身份认证程序。HTTP 认证可以保护一个作用域(成为一个 realm)内的资源不受非法访问。当一个请求要求取得受保护的资源时,网页服务器回应一个 401 Unauthorized error 错误码。这个回应包含了一个指定验证方法和领域的 WWW- 阅读全文

posted @ 2023-01-03 20:04 乐之之 阅读(630) 评论(0) 推荐(0)

爬虫笔记【1】如何爬取无HTTPS证书的网站?
摘要:在爬虫过程中遇到很多网页都多多少少会存在证书过期的情况,那么证书过期后,该网站会被认定为不安全网站,那么怎么进行正常的数据爬取呢? 主要从爬虫过程中常遇到的三个问题进行解决。 1、打开网页,检测出该网页连接不安全,但是想要直接访问怎么办? 原因:证书过期,或其他问题。 如图: 解决方案:在网页内直接 阅读全文

posted @ 2023-01-03 19:17 乐之之 阅读(816) 评论(0) 推荐(0)

MongoDB
摘要:MongoDB是一个基于分布式文件存储的数据库。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。M 阅读全文

posted @ 2022-12-27 11:29 乐之之 阅读(105) 评论(0) 推荐(0)

scrapy-redis分布式
摘要:一、简介 scrapy是一个基于redis的scrapy组件,用于快速实现scrapy项目的分布式数据爬取。 (一)安装redis pip install scrapy_redis (二)执行流程图 调度器、管道不可以被分布式集群共享 二、中间件的使用 下载中间件(Downloader Middle 阅读全文

posted @ 2022-12-06 19:43 乐之之 阅读(126) 评论(0) 推荐(0)

scrapy
摘要:一、认识scrapy scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,我们只需实现少量的代码,就能实现数据的快速抓取 scrapy使用了Twisted异步网络架构。 主要模块: pip install scrapy pip install twisted 在下载时由于内存相比于其 阅读全文

posted @ 2022-11-24 22:34 乐之之 阅读(269) 评论(0) 推荐(0)

如何解决字体加密?
摘要:问题:怎么将源代码中的加密字体正常显示? 当爬取数据时,经常会发现一些既不是想要的对应文字,也不是乱码。那么该网站是进行了字体加密的反爬虫。如何解决这一问题呢? 那么就会用到了我们的TTFont模块: from fontTools.ttLib import TTFont 那么我们来看一下解决的流程, 阅读全文

posted @ 2022-11-22 22:31 乐之之 阅读(1368) 评论(0) 推荐(0)

selenium
摘要:一、认识selenium Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。 支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google,Chrome,Opera,Edge等。 阅读全文

posted @ 2022-11-22 12:13 乐之之 阅读(112) 评论(0) 推荐(0)

多进程
摘要:进程和程序 进程:正在执行的程序 程序:还没有执行的代码,处于静态 一、进程的状态 使用进程实现多任务 multiprocessing模块就是跨平台的多进程模块提供了有个Process类来代表一个进程对象,这个对象可以理解为一个独立的进程,可以执行另外的事情。 二、进程和线程之间的对比 进程:能够完 阅读全文

posted @ 2022-11-20 17:30 乐之之 阅读(23) 评论(0) 推荐(0)

线程与队列
摘要:一、线程安全队列 python内置的线程安全队列模块叫queue python的Queue模块中提供了同步的、线程安全的队列类 FIFO(先进先出)队列的Queue(常用) LIFO(后进先出)lifoQueue 可以使用队列来实现线程间的同步。 二、队列的常用方法 函数 描述 qsize() 返回 阅读全文

posted @ 2022-11-18 13:09 乐之之 阅读(58) 评论(0) 推荐(0)

多线程
摘要:程序同时执行多个任务 使用线程可以把占据长时间的程序中的任务放到后台去处理。 程序的运行速度可能加快 一、线程实现方法 线程是CPU分配资源的基本单位。当一程序开始运行,这个程序就变成了一个进程,而一个进程相当于一个或者多个线程。当没有多线程编程时,一个进程相当于一个主线程;当有多线程编程时,一个进 阅读全文

posted @ 2022-11-16 22:51 乐之之 阅读(26) 评论(0) 推荐(0)

MySQL
摘要:MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 一、安装和登录MySQL (一)安装MySQL 1、下 阅读全文

posted @ 2022-11-13 18:20 乐之之 阅读(19) 评论(0) 推荐(0)

正则表达式
摘要:认识正则:正则表达式,又称规则表达式,(Regular Expression,在代码中常简写为regex、regexp或RE),是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符"),是计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列匹配某个语法规则 阅读全文

posted @ 2022-11-03 22:18 乐之之 阅读(44) 评论(0) 推荐(0)

bs4解析
摘要:下载 --pip install bs4 示例代码-爱丽丝漫游仙境 html_doc = """ <html><head><title>The Dormouse's story</title></head> <body> <p class="title"><b>The Dormouse's stor 阅读全文

posted @ 2022-11-03 16:51 乐之之 阅读(94) 评论(0) 推荐(0)

xpath解析
摘要:一、xpath语法 XPath 使用路径表达式来选取HTML/ XML 文档中的节点或节点集。节点是通过沿着路径 (path) 或者步 (steps) 来选取的。 二、选取节点 表达式 描述 nodename 选取此节点的所有子节点。 / 从根节点选取(取子节点)。 // 从匹配选择的当前节点选择文 阅读全文

posted @ 2022-10-31 22:31 乐之之 阅读(166) 评论(0) 推荐(0)

requests进阶
摘要:一、图片下载 下载图片,需获取到图片的url地址和图片名称,通过向图片url发起请求,之后获取.content 注意: .text返回的是Unicode型的数据。 .content返回的是bytes型也就是二进制的数据。 import requests url = “https://www.baid 阅读全文

posted @ 2022-10-27 22:22 乐之之 阅读(67) 评论(0) 推荐(0)