什么是爬虫
一种自动获取网络页面内容的程序
网络爬虫也叫作网络机器人、网络蜘蛛
是一种按照一定规则,自动地抓取网络信息的程序或脚本
通用爬虫
搜索引擎的爬虫系统
追求大的爬行覆盖范围
聚焦爬虫
针对某种内容爬虫
只对特定的网站进行爬取
爬虫的一般流程
- Step1-获取网页内容:给一个网址发送请求,该网址会返回整个网页的数据
- Step2-解析网页内容:从整个网页数据中提取想要的数据
-
Step3-保存数据:数据可保存在数据库、文件中
爬虫能做什么
爬虫的一般应用场景
电商网站分析商品数据
电商网站分析商品数据社交网络分析舆情动态
社交网络分析舆情动态新闻文本挖掘行业动向
新闻文本挖掘行业动向各类信息批量采集下载
各类信息批量采集下载爬虫在科研中的应用场景
快速追踪最新文献
• Request(获取)+Beautiful Soup(解析)
• Biopython库(Entrez模块)、pymed库
• 利用第三方库直接下载PDF
• 调用接口实现自动英译汉
• ……
项目与基金热点分析
• Selenium(获取)+Beautiful Soup(解析)
• jiba等库进行自然语言分析获得领域热词等分析
• ……
爬取生信数据
• Biopython处理多种生物信息学问题
• pysam处理基因组序列工具
• ……
Python爬虫的优势
Python是用于爬虫的最佳工具之一
• PHP、C/C++、JAVA、Python…等语言均可用于构建爬虫
• Python抓取网页文档的接口更加简洁
• Python拥有丰富的第三方库与爬虫框架
• Python代码简洁、开发效率高
• Python良好的跨平台支持
• ……
Python爬虫常用库
常用的请求库
Urllib库
• Python内置的HTTP请求库
• 一系列用于操作URL的功能
Requests库
• 模拟浏览器操作
• 下载网页内容
Selenium库
• 模拟人自动与网站交互
• 支持所有主流的浏览器
常用的解析库
re库
• Python内置正则表达式模块
• 解析速度较快
beautifulsoup库
• 结构化网页数据
• 轻松获取网页内容
lxml库
• 轻松处理XML和HTML文件
• 支持XPath解析方式,解析效率非常高
常用的数据存储库、爬虫框架
pymysql
Python 实现的 MySQL 客户端操作库
pymongo
直接连接 mongodb 数据库进行查询操作
Scrapy爬虫框架
• 爬取网站数据
• 提取结构性数据
总结
爬虫的基本概念:
- 按照一定规则,自动获取网络页面内容的程序
- 获取网页内容 、解析网页内容 、保存数据
爬虫的应用场景: - 网站数据分析、社交舆情分析、行业动向洞察、信息批量采集
- 追踪最新文献、分析基金项目、爬取生信数据
Python爬虫的优势:接口简洁、第三方库丰富、开发效率高、支持跨平台
Python爬虫常用库: - 请求库:urllib库、Requests库、Selenium库
- 解析库:re库、beautifulsoup库、lxml库
- 数据存储库:pymysql库、pymongo库、Scrapy爬虫框架
网友评论