关注
Erlo

python爬虫框架知识分享

2022-12-15 16:09:33 发布   79 浏览  
页面报错/反馈
收藏 点赞

网络爬虫是当下非常火的工作岗位,有不少人想要入行爬虫领域,想必大家都知道,学习爬虫除了开发语言以外,框架的选择也是很重要的。比如说如果是小型爬虫需求,requests库+bs4库就能解决;大型爬虫数据,尤其涉及异步抓取、内容管理及后续扩展等功能时,就需要用到爬虫框架了。其中Python不仅是非常适合网络爬虫的编程语言,拥有各种各样的框架,对网络爬虫有着非常重要的作用,那么Python相关爬虫的框架有哪些,我们就来简单的了解下。

1、scrapy框架,是一套比较成熟的Python爬虫框架,是使用Python开发的快速、高层次的信息爬取框架,可以高效的爬取web页面并提取结构化数据。这是很多人会选择的框架。这里简单的示例下这个框架在爬虫里面是怎么实现的。

#! -*- encoding:utf-8 -*-
       import base64            
       import sys
       import random

       PY3 = sys.version_info[0] >= 3

       def base64ify(bytes_or_str):
           if PY3 and isinstance(bytes_or_str, str):
               input_bytes = bytes_or_str.encode('utf8')
           else:
               input_bytes = bytes_or_str

           output_bytes = base64.urlsafe_b64encode(input_bytes)
           if PY3:
               return output_bytes.decode('ascii')
           else:
               return output_bytes

       class ProxyMiddleware(object):                
           def process_request(self, request, spider):
               # 代理服务器(产品官网 www.16yun.cn)
               proxyHost = "t.16yun.cn"
               proxyPort = "31111"

               # 代理验证信息
               proxyUser = "username"
               proxyPass = "password"

               request.meta['proxy'] = "http://{0}:{1}".format(proxyHost,proxyPort)


               # [版本>=2.6.2](https://docs.scrapy.org/en/latest/news.html?highlight=2.6.2#scrapy-2-6-2-2022-07-25)无需添加验证头,会自动在请求头中设置Proxy-Authorization    
               # 版本

2、Crawley框架,是Python开发出来的爬虫框架,该框架致力于改变人们从互联网中提取数据的方式。

3、Portia框架,一款允许没有任何编程基础的用户可视化地爬取网页的爬虫框架。

4、newspaper框架,一个用来提取新闻、文章以及内容分析的Python爬虫框架。

5、Python—goose框架,该框架可以提取文章主体内容、文章主要图片、文章中嵌入的任何Youtube/Vimeo视频、元描述、元标签。


登录查看全部

参与评论

评论留言

还没有评论留言,赶紧来抢楼吧~~

手机查看

返回顶部

给这篇文章打个标签吧~

棒极了 糟糕透顶 好文章 PHP JAVA JS 小程序 Python SEO MySql 确认