scrapy
柏林墙
这个作者很懒,什么都没留下…
展开
-
4.1 scrapy通过管道保存数据为execl中
在pipelines.py文件中from openpyxl import Workbookclass JnuSaveinExcel: def open_spider(self,spider): # 实例化创建Excel文件 self.wb = Workbook() # 激活一个表单 self.ws = self.wb.active self.ws.title = 'sample_1' # 再添.原创 2020-07-13 16:55:18 · 234 阅读 · 0 评论 -
6.scrapy的中间件常用功能
1. 中间件概论1.1 分类下载中间件(常用)爬虫中间件(一般不用)1.2 中间件的作用下载中间件和爬虫中间件都在一个middlewares.py文件中,定义不同的中间件类分为process_request 和 process_response两种一般用于User-Agent的随机指定,反爬虫用代理IP设置通过selenium请求处理,对一些难以处理的网页以直观网页形式抓取,而不是分析里面的Alex请求Downloader Middlewares默认的方法:proces原创 2020-07-13 09:23:22 · 235 阅读 · 0 评论 -
5_crawlspider对网页链接的自动提取和递归提取
1. 什么是crawlspider需求:如对网页中某人物详情、招聘详情、商品详情的链接提取并且不断的通过下一页自动递归的提取全部链接功能:能够根据一定的匹配规则进行匹配从response中提取链接自动构建request请求发送给引擎2. 如何实现2.1 通过crawlspider模板创建爬虫文件在创建的爬虫项目中创建爬虫文件scrapy genspider -t crawl jnu_crawl jnu.edu.cn此时修改jnu_crawl.py文件import sc原创 2020-07-11 20:40:11 · 324 阅读 · 0 评论 -
4_scrapy的管道pipelines使用详解
1. pipelines常用的方法process_item(self,item,spider):管道类中必须有的函数实现对item数据的处理必须return itemopen_spider(self, spider): 在爬虫开启的时候仅执行一次close_spider(self, spider): 在爬虫关闭的时候仅执行一次2. 对管道文件修改易错点:这里需要返回item,而且是在if外,当该管道在setting文件中排第一个时,需要将item原封不动的返回,否则下一个原创 2020-07-10 22:20:17 · 905 阅读 · 0 评论 -
3_scrapy模拟登陆GitHub的两种方法
1. 使用cookies登陆在爬虫文件中重构start_url方法,模拟登陆GitHub先通过在网页中登陆自己的账号,获取cookies后在start_url方法中构造请求对象携带cookies,传递给引擎再传给parse方法import scrapyclass GithubSpider(scrapy.Spider): name = 'github' allowed_domains = ['github.com'] start_urls = ['https://githu原创 2020-07-10 22:16:31 · 241 阅读 · 0 评论 -
2_scrapy数据建模及请求参数
1. 数据建模1.1 为何要建模在item中提前定义好需要抓取的内容,防止在爬虫文件中误写提前定义加注释和明确目标1.2 如何建模在item.py中class MyspiderItem(scrapy.Item): name = scrapy.Field() # 讲师的名字 title = scrapy.Field() # 讲师的职称 desc = scrapy.Field() # 讲师的介绍1.3 如何使用建好的模在爬虫文件中在from myspi原创 2020-07-10 11:33:23 · 183 阅读 · 0 评论 -
1_scrapy原理介绍及入门对传智播客师资爬取保存案例
1. scrapy的原理scrapy的架构图各个部分功能Scrapy Engine(引擎): 负责Spider、ItemPipeline、Downloader、Scheduler中间的通讯,信号、数据传递等。Scheduler(调度器): 它负责接受引擎发送过来的Request请求,并按照一定的方式进行整理排列,入队,当引擎需要时,交还给引擎。Downloader(下载器):负责下载Scrapy Engine(引擎)发送的所有Requests请求,并将其获取到的Response原创 2020-07-08 21:55:31 · 295 阅读 · 0 评论