实用技能 | 常用的爬虫框架

Posted 教育技术学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实用技能 | 常用的爬虫框架相关的知识,希望对你有一定的参考价值。

python爬虫---->常见python爬虫框架

一般比较小型的爬虫需求,可以直接使用requests库 + bs4解决,再麻烦点就使用selenium解决js的异步加载问题。相对比较大型的需求才使用框架,主要是便于管理以及扩展等。


一、爬虫技术库-urllib.request和requests库的使用(简单)

1.  requests库
import requests
headers = { 'User-Agent': 'Mozilla/5.0 Chrome/64.0.3282.186 Safari/537.36', }
url = 'http://www.baidu.com'
response = requests.get(url,headers=headers)
response.encoding = 'utf-8'
print(response)
2. urllib.request库
from urllib import request
headers = { 'User-Agent': 'Mozilla/5.0 Chrome/64.0.3282.186 Safari/537.36', }
url = 'http://www.baidu.com'
req = request.Request(url, headers=headers)
response = request.urlopen(req)
data = response.read().decode('UTF-8')
print(data)


二、常见python爬虫框架

1) Scrapy:很强大的爬虫框架,可以满足简单的页面爬取(比如可以明确获知url pattern的情况)。用这个框架可以轻松爬下来如亚马逊商品信息之类的数据。但是对于稍微复杂一点的页面,如weibo的页面信息,这个框架就满足不了需求了。
https://www.cnblogs.com/Lijcyy/p/9779196.html
2) Crawley: 高速爬取对应网站的内容,支持关系和非关系数据库,数据可以导出为JSON、XML等
3) Portia:可视化爬取网页内容
4)newspaper:提取新闻、文章以及内容分析
5)python-goose:java写的文章提取工具
6)Beautiful Soup:名气大,整合了一些常用爬虫需求。缺点:不能加载JS。
7)mechanize:优点:可以加载JS。缺点:文档严重缺失。不过通过官方的example以及人肉尝试的方法,还是勉强能用的。
8)selenium:这是一个调用浏览器的driver,通过这个库你可以直接调用浏览器完成某些操作,比如输入验证码。
9)cola:一个分布式爬虫框架。项目整体设计有点糟,模块间耦合度较高。


希望能对大家有用~实用技能 | 常用的爬虫框架

 

编辑 | 楠楠

内容来源 | 金色阳光--博客园

特别声明:本文来源互联网,转载仅仅是出于传播信息的需要,作者如果不希望转载,请与我们接洽。


「你的每一个  对我们都是鼓励」

以上是关于实用技能 | 常用的爬虫框架的主要内容,如果未能解决你的问题,请参考以下文章

各大主流编程语言-常用爬虫框架以及优劣分析

一文快速掌握 scrapy 爬虫框架

介绍大家一款超级灵活,友好并且超级实用的爬虫框架!得心应手!

爬虫的框架

第三篇:爬虫框架 - Scrapy

php爬虫框架盘点