爬虫=发送请求+页面解析+数据存储
优采云 发布时间: 2022-07-07 17:11爬虫=发送请求+页面解析+数据存储
GitHub:
基于 asyncio 实现的 HTTP 框架。异步操作借助于 async/await 关键字,使用异步库进行数据抓取,可以大大提高效率。
这个属于进阶爬虫时候必须掌握的异步库。有关于aiohttp的详细操作,可以去官方文档:
使用小案例:
import aiohttpimport asyncio<br />async def fetch(session, url): async with session.get(url) as response: return await response.text()<br />async def main(): async with aiohttp.ClientSession() as session: html = await fetch(session, 'http://python.org') print(html)<br />if __name__ == '__main__': loop = asyncio.get_event_loop() loop.run_until_complete(main())
2
解析库
1、beautifulsoup
官方文档:
html 和 XML 的解析,从网页中提取信息,同时拥有强大的API和多样解析方式。一个我经常使用的解析库,对于html的解析是非常的好用。对于写爬虫的人来说这也是必须掌握的库。
2、lxml
GitHub:
支持HTML和XML的解析,支持XPath解析方式,而且解析效率非常高。
3、pyquery
GitHub:
jQuery 的 Python 实现,能够以 jQuery 的语法来操作解析 HTML 文档,易用性和解析速度都很好。
3
数据存储库
1、pymysql
GitHub:
官方文档:
一个纯 Python 实现的 MySQL 客户端操作库。非常的实用、非常的简单。
2、pymongo
GitHub:
官方文档:
顾名思义,一个用于直接连接 mongodb 数据库进行查询操作的库。
3、redisdump
使用方法:
redis-dump是将redis和json互转的工具;redis-dump是基于ruby开发,需要ruby环境,而且新版本的redis-dump要求2.2.2以上的ruby版本,centos中yum只能安装2.0版本的ruby。需要先安装ruby的管理工具rvm安装高版本的ruby。
——本文完——
今日留言主题:说说你读完本文感受?或者一句激励自己的话?
(字数不少于15字)
说明今天是留言打卡第四天下周就开始有赠书啦先混脸熟吧简说Python,等你~
2小时快速掌握Python基础知识要点。
完整Python基础知识要点
学Python | 聊赚钱
给个[在看