常用Python爬虫库汇总

网工实验笔记:SNMP的配置 简单网络管理协议SNMP(Simple Network Management Protocol)是广泛应用于TCP/IP网络的网络管理标准协议。SNMP提供了一种通过运行网络管理软件的中心计算机(即网络管理工作站)来管理设备的方法。 阅读详情

很多人学Python,都是从爬虫开始的,毕竟网上类似的资源很丰富,开源项目也非常多。

Python学习网络爬虫主要分3个大的版块: 抓取 , 分析 , 存储

当我们在浏览器中输入一个url后回车,后台会发生什么?

简单来说这段过程发生了以下四个步骤:

•查找域名对应的IP地址。
•向IP对应的服务器发送请求。
•服务器响应请求,发回网页内容。
•浏览器解析网页内容。

那么学习爬虫需要掌握哪些库呢

通用:

1.urllib -网络库(stdlib)。
2.requests -网络库。
3.grab – 网络库(基于pycurl)。
4.pycurl – 网络库(绑定libcurl)。
5.urllib3 – Python HTTP库,安全连接池、支持文件post、可用性高。
6.httplib2 – 网络库。
7.RoboBrowser – 一个简单的、极具Python风格的Python库,无需独立的浏览器即可浏览网页。
8.MechanicalSoup -一个与网站自动交互Python库。
9.mechanize -有状态、可编程的Web浏览库。
10.socket – 底层网络接口(stdlib)。
11.Unirest for Python – Unirest是一套可用于多种语言的轻量级的HTTP库。
12.hyper – Python的HTTP/2客户端。
13.PySocks – SocksiPy更新并积极维护的版本,包括错误修复和一些其他的特征。作为socket模块的直接替换。

网络爬虫框架

1.功能齐全的爬虫

•grab – 网络爬虫框架(基于pycurl/multicur)。
•scrapy – 网络爬虫框架(基于twisted),不支持Python3。
•pyspider – 一个强大的爬虫系统。
•cola – 一个分布式爬虫框架。

2.其他

•portia – 基于Scrapy的可视化爬虫。
•restkit – Python的HTTP资源工具包。它可以让你轻松地访问HTTP资源,并围绕它建立的对象。•demiurge – 基于PyQuery的爬虫微框架。

HTML/XML解析器

1.通用

•lxml – C语言编写高效HTML/ XML处理库。支持XPath。
•cssselect – 解析DOM树和CSS选择器。
•pyquery – 解析DOM树和jQuery选择器。
•BeautifulSoup – 低效HTML/ XML处理库,纯Python实现。
•html5lib – 根据WHATWG规范生成HTML/ XML文档的DOM。该规范被用在现在所有的浏览器上。•feedparser – 解析RSS/ATOM feeds。
•MarkupSafe – 为XML/HTML/XHTML提供了安全转义的字符串。
•xmltodict – 一个可以让你在处理XML时感觉像在处理JSON一样的Python模块。
•xhtml2pdf – 将HTML/CSS转换为PDF。
•untangle – 轻松实现将XML文件转换为Python对象。

2.清理

•Bleach – 清理HTML(需要html5lib)。
•sanitize – 为混乱的数据世界带来清明。

文本处理

用于解析和操作简单文本的库。

1.通用
2.difflib – (Python标准库)帮助进行差异化比较。
3.Levenshtein – 快速计算Levenshtein距离和字符串相似度。
4.fuzzywuzzy – 模糊字符串匹配。
5.esmre – 正则表达式加速器。
6.ftfy – 自动整理Unicode文本,减少碎片化。

自然语言处理

处理人类语言问题的库。

•NLTK -编写Python程序来处理人类语言数据的最好平台。
•Pattern – Python的网络挖掘模块。他有自然语言处理工具,机器学习以及其它。
•TextBlob – 为深入自然语言处理任务提供了一致的API。是基于NLTK以及Pattern的巨人之肩上发展的。
•jieba – 中文分词工具。
•SnowNLP – 中文文本处理库。
•loso – 另一个中文分词库。

浏览器自动化与仿真

•selenium – 自动化真正的浏览器(Chrome浏览器,火狐浏览器,Opera浏览器,IE浏览器)。•Ghost.py – 对PyQt的webkit的封装(需要PyQT)。
•Spynner – 对PyQt的webkit的封装(需要PyQT)。
•Splinter – 通用API浏览器模拟器(selenium web驱动,Django客户端,Zope)。

多重处理

•threading – Python标准库的线程运行。对于I/O密集型任务很有效。对于CPU绑定的任务没用,因为python GIL。
•multiprocessing – 标准的Python库运行多进程。
•celery – 基于分布式消息传递的异步任务队列/作业队列。
•concurrent-futures – concurrent-futures 模块为调用异步执行提供了一个高层次的接口。

异步

异步网络编程库

•asyncio – (在Python 3.4 +版本以上的 Python标准库)异步I/O,时间循环,协同程序和任务。•Twisted – 基于事件驱动的网络引擎框架。
•Tornado – 一个网络框架和异步网络库。
•pulsar – Python事件驱动的并发框架。
•diesel – Python的基于绿色事件的I/O框架。
•gevent – 一个使用greenlet 的基于协程的Python网络库。
•eventlet – 有WSGI支持的异步框架。
•Tomorrow – 异步代码的奇妙的修饰语法。

队列

•celery – 基于分布式消息传递的异步任务队列/作业队列。
•huey – 小型多线程任务队列。
•mrq – Mr. Queue – 使用redis & Gevent 的Python分布式工作任务队列。
•RQ – 基于Redis的轻量级任务队列管理器。
•simpleq – 一个简单的,可无限扩展,基于Amazon SQS的队列。
•python-gearman – Gearman的Python API。

云计算

•picloud – 云端执行Python代码。
•dominoup.com – 云端执行R,Python和matlab代码

网页内容提取

提取网页内容的库。

•HTML页面的文本和元数据•newspaper – 用Python进行新闻提取、文章提取和内容策展。
•html2text – 将HTML转为Markdown格式文本。
•python-goose – HTML内容/文章提取器。
•lassie – 人性化的网页内容检索工具

WebSocket

用于WebSocket的库。

•Crossbar – 开源的应用消息传递路由器(Python实现的用于Autobahn的WebSocket和WAMP)。•AutobahnPython – 提供了WebSocket协议和WAMP协议的Python实现并且开源。
•WebSocket-for-Python – Python 2和3以及PyPy的WebSocket客户端和服务器库。

DNS解析

•dnsyo – 在全球超过1500个的DNS服务器上检查你的DNS。
•pycares – c-ares的接口。c-ares是进行DNS请求和异步名称决议的C语言库。

计算机视觉

•OpenCV – 开源计算机视觉库。
•SimpleCV – 用于照相机、图像处理、特征提取、格式转换的简介,可读性强的接口(基于OpenCV)。
•mahotas – 快速计算机图像处理算法(完全使用 C++ 实现),完全基于 numpy 的数组作为它的数据类型。

web开发的一些框架

1.Django

Django是一个开源的Web应用框架,由Python写成,支持许多数据库引擎,可以让Web开发变得迅速和可扩展,并会不断的版本更新以匹配Python最新版本,如果是新手程序员,可以从这个框架入手。

2.Flask

Flask是一个轻量级的Web应用框架, 使用Python编写。基于 WerkzeugWSGI工具箱和 Jinja2模板引擎。使用 BSD 授权。

Flask也被称为 “microframework” ,因为它使用简单的核心,用 extension 增加其他功能。Flask没有默认使用的数据库、窗体验证工具。然而,Flask保留了扩增的弹性,可以用Flask-extension加入这些功 能:ORM、窗体验证工具、文件上传、各种开放式身份验证技术。

3.Web2py

Web2py是一个用Python语言编写的免费的开源Web框架,旨在敏捷快速的开发Web应用,具有快速、可扩展、安全以及可移植的数据库驱动的应用,遵循LGPLv3开源协议。

Web2py提供一站式的解决方案,整个开发过程都可以在浏览器上进行,提供了Web版的在线开发,HTML模版编写,静态文件的上传,数据库的编写的功能。其它的还有日志功能,以及一个自动化的admin接口。

4.Tornado

Tornado即是一个Web server(对此本文不作详述),同时又是一个类web.py的micro-framework,作为框架Tornado的思想主要来源于Web.py,大家在Web.py的网站首页也可以看到Tornado的大佬Bret Taylor的这么一段话(他这里说的FriendFeed用的框架跟Tornado可以看作是一个东西):

因为有这层关系,后面不再单独讨论Tornado。

5.CherryPy

CherryPy是一种用于Python的、简单而非常有用的Web框架,其主要作用是以尽可能少的操作将Web服务器与Python代码连接,其功能包括内置的分析功能、灵活的插件系统以及一次运行多个HTTP服务器的功能,可与运行在最新版本的Python、Jython、Android上。

关于框架的选择误区

在框架的选择问题上,许多人很容易就陷入了下面两个误区中而不自知:哪个框架最好——世上没有最好的框架,只有最适合你自己、最适合你的团队的框架。编程语言选择也是一个道理,你的团队Python最熟就用Python好了,如果最熟悉的是Ruby那就用Ruby好了,编程语言、框架都只是工具,能多、快、好、省的干完活就是好东西。

过分关注性能——其实大部分人是没必要太关心框架的性能的,因为你开发的网站根本就是个小站,能上1万的IP的网站已经不多了,上10万的更是很少很少。在没有一定的访问量前谈性能其实是没有多大意义的,因为你的CPU和内存一直就闲着呢。

学习资源推荐
除了上述分享,学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、自动化办公等学习教程。带你从零基础系统性的学好Python!

👉Python所有方向的学习路线👈

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取)

在这里插入图片描述
👉Python学习视频600合集👈

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

在这里插入图片描述

温馨提示:篇幅有限,已打包文件夹,获取方式在:文末

👉Python70个实战练手案例&源码👈

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

👉Python大厂面试资料👈

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

在这里插入图片描述

在这里插入图片描述

👉Python副业兼职路线&方法👈

学好 Python 不论是就业还是做副业赚钱都不错,但要学会兼职接单还是要有一个学习规划。

在这里插入图片描述

👉 这份完整版的Python全套学习资料已经上传,朋友们如果需要可以V扫描下方二维码联系领取
【保证100%免费
】

无法将“choco”项识别为 cmdlet、函数、脚本文件或可运行程序的名称的解决方案 本文主要介绍了无法将“choco”项识别为 cmdlet、函数、脚本文件或可运行程序的名称的解决方案,希望能对使用wIndows的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案 阅读详情

相关推荐

GPU服务器选购避坑指南:从硬件配置到场景化性能调优

本文提供GPU服务器选购的全面指南,涵盖硬件架构解析、应用场景配置策略和性能调优实践。针对大模型训练、推理服务和科学计算等场景,详细分析GPU选型、内存带宽匹配和散热设计等关键因素,帮助技术决策者避免常见配置误区,实现成本效益最大化。

peace的博客 1030

Python 网络爬虫的常用库汇总

一、请求库:实现 HTTP 请求操作 urllib:一系列用于操作URL的功能,Python的内置库,直接使用方法import导入即可。。 requests:基于 urllib 编写的请求库,阻塞式 HTTP 请求库,发出一个请求,一直等待服务器响应后,程序才能进行下一步处理。 selenium:自动化测试工具。一个调用浏览器的 driver,通过这个库你可以直接调用浏览器完成某些操作,比如...

小橙子的博客 2983

初识Renode

1. 简介 Renode是Antmicro公司发布的一个开发框架,使得开发人员通过模拟物理硬件系统(包括CPU、外围设备、传感器、环境以及节点之间的有线或无线介质),加速物联网和嵌入式系统的开发。它可在PC上通过软件对嵌入式设备进行模拟,可模拟Cortex-M、Cortex-A、RISC-V和其他CPU,并可模拟外设以及各种通信总线和接口。其指令模拟器使用C语言开发,外设模拟器使用C#语言开发,测试及输出层面的内容则用python编写。 Renode官网:Renodehttps://renode.io/

牧羊女 5293

Python 网络爬虫的常用库汇总(建议收藏)

Python 在编写网络爬虫常常用到的一些库。Python爬虫网络库主要包括:urllib、requests、lxml、fake-useragent、bs4(BeautifulSoup)、grab、pycurl、urllib3、httplib2、RoboBrowser 、MechanicalSoup、mechanize、socket、Unirest for Python、hyper、PySocks、treq、aiohttp等。爬虫框架Web 框架库Re库介绍:正则表达式的表示类型:raw string类型(

大模型研究中心 1万+

基于Python的农业市场价格抓取与供需分析:现代爬虫技术与实战应用

在正式开始爬虫开发之前,我们首先了解爬虫的基本概念和工作原理。爬虫(Web Scraping)是通过编程的方式,自动从互联网上获取信息的技术。它可以帮助我们提取HTML页面中的特定数据,通常用于收集并处理大量信息。发送HTTP请求:爬虫需要向目标网站发送请求,获取网站的HTML页面内容。解析HTML页面:通过HTML解析器对获取的页面内容进行解析,提取其中需要的数据。数据清洗与存储:将提取的数据进行清洗,去除多余的字符或无关内容,然后存储到合适的格式(如CSV文件、数据库等)中。数据分析与可视化。

2201_76125261的博客 1117

1分钟了解LangChain是什么?

是一个基于大型语言模型(LLM)开发应用程序的框架, 它旨在简化语言模型应用的开发流程,特别是在构建对话系统和其他基于语言的AI解决方案时.目标是将复杂的语言模型技术转化为可通过简单API调用实现的功能,从而使开发者能够更加专注于创造性的解决方案设计。高效地解决了开发大语言模型应用的痛点问题。Langchain 最主要的特色是可以将 LLM 应用研发过程中的交互 Prompt、LLM 模型调用、语言模型与环境互动的自适应等方式融为一体。

gorgor在码农 2630

Python 网络爬虫的常用库汇总及应用

Python 网络爬虫的常用库汇总 爬虫的编程语言有不少,但 Python 绝对是其中的主流之一。今天就为大家介绍下 Python 在编写网络爬虫常常用到的一些库。 请求库:实现 HTTP 请求操作 urllib:一系列用于操作URL的功能。 requests:基于 urllib 编写的,阻塞式 HTTP 请求库,发出一个请求,一直等待服务器响应后,程序才能进行下一步处理。 selenium:自动化测试工具。一个调用浏览器的 driver,通过这个库你可以直接调用浏览器完成某些操作,比如输入验证码。

weixin_44264006的博客 1103

第4.4节:保护轴承与安全系统

飞轮储能系统的保护轴承是磁悬浮失效时的最后安全屏障,其设计需满足非干涉性、高可靠性和有限寿命承载原则。转子跌落过程包括自由下落、碰撞、进动和滑行减速等复杂非线性阶段,产生远超常规工况的冲击载荷。保护轴承需具备极限冲击容量、高温耐受性和抗卡死能力。系统采用多层级安全架构,结合故障诊断与健康管理,通过监测振动、电流等参数实现预测性维护。安全停机序列有序结合主动制动与被动摩擦制动,确保系统在极端工况下的安全。保护轴承类型多样,需根据系统规模与可靠性要求合理选择。

技术工作者 227

python库_Python 网络爬虫的常用库汇总

爬虫的编程语言有不少,但 Python 绝对是其中的主流之一。下面就为大家介绍下 Python 在编写网络爬虫常常用到的一些库。请求库:实现 HTTP 请求操作urllib:一系列用于操作URL的功能。requests:基于 urllib 编写的,阻塞式 HTTP 请求库,发出一个请求,一直等待服务器响应后,程序才能进行下一步处理。selenium:自动化测试工具。一个调用浏览器的 driver,...

weixin_39908070的博客 173

使用verilog设计实现QR分解

QR(正交三角)分解法是求一般矩阵全部特征值的最有效并广泛应用的方法,一般矩阵先经过正交相似变化成为Hessenberg矩阵,然后再应用QR方法求特征值和特征向量。 使用verilog对QR实现方法进行设计并进行功能仿真: 如下: 顶层模块代码: module TOP( H1R, H1I, H2R, H2I, H3R, H3I, H4R, H4I, clk, rst_n, Y1R, Y1I, Y2R, Y2I, X1R, X1I, X2R, X2I ); parameter width = 16; // I

QQ_778132974的博客 2150

AMBA-AXI and ACE协议详解(十)

本章介绍了ACE协议中的Barrier事务机制,包括内存屏障和同步屏障两种类型。

Crazzy_M的博客 614

java网络编程_Python 网络爬虫的常用库汇总

爬虫的编程语言有不少,但 Python 绝对是其中的主流之一。下面就为大家介绍下 Python 在编写网络爬虫常常用到的一些库。请求库:实现 HTTP 请求操作urllib:一系列用于操作URL的功能。requests:基于 urllib 编写的,阻塞式 HTTP 请求库,发出一个请求,一直等待服务器响应后,程序才能进行下一步处理。selenium:自动化测试工具。一个调用浏览器的 driver,...

weixin_39775577的博客 442

Attention优化|2w字原理&图解: 从Online-Softmax到FlashAttention V1/V2/V3

本文通过原理分析和图解的方式,通俗易懂地FlashAttention系列算法。FlashAttention V1/V2在LLM领域的应用已经非常广泛,相关的论文也反复读了几遍。FA1和FA2论文非常经典,都推荐读一下(不过FA2论文中公式错误不少本文大约1.8w字,包括以下内容:0x07 分布式训推使用FlashAttention0x09 FlashAttention中MQA/GQA以及Causal Mask处理。

具身机器人和通用AI 5232

python爬取网页内容_Python 网络爬虫的常用库汇总

爬虫的编程语言有不少,但 Python 绝对是其中的主流之一。下面就为大家介绍下 Python 在编写网络爬虫常常用到的一些库。请求库:实现 HTTP 请求操作urllib:一系列用于操作URL的功能。requests:基于 urllib 编写的,阻塞式 HTTP 请求库,发出一个请求,一直等待服务器响应后,程序才能进行下一步处理。selenium:自动化测试工具。一个调用浏览器的 driver,...

weixin_39878989的博客 725

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

干货| 常用Python爬虫库汇总

很多人学Python,都是从爬虫开始的,毕竟网上类似的资源很丰富,开源项目也非常多。Python学习网络爬虫主要分3个大的版块当我们在浏览器中输入一个url后回车,后台会发生什么?简单来说这段过程发生了以下四个步骤:•查找域名对应的IP地址。•向IP对应的服务器发送请求。•服务器响应请求,发回网页内容。•浏览器解析网页内容。

l422402的博客 1689

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Python爬虫:常用的爬虫工具及库汇总

添加链接描述

haizhishi5112的博客 893

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

上一篇: 超详细的 Python 文件操作知识!
下一篇: 我常用的5个Python可视化库
Python干货分享
博客等级 码龄3年 607粉丝 37原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值