包虫病

注册

 

发新话题 回复该主题

使用feapder开发爬虫是一种怎样的体 [复制链接]

1#
手上白癜风能治疗吗 https://m-mip.39.net/nk/mipso_4357526.html

之前,我们写爬虫,用的最多的框架莫过于scrapy啦,今天我们用最近新出的爬虫框架feapder来开发爬虫,看下是怎样的体验。

目标网站:aHR0cHM6Ly93d3cubGFnb3UuY29tLw==需求:采集职位列表与职位详情,详情需每7天更新一次为了演示,以下只搜索与爬虫相关的职位

1.调研1.1列表页面

首先我们需要看下页面是否为动态渲染的,接口是否有反爬。

看是否为动态渲染的可以右键,显示网页源代码,然后搜索网页上的内容源码里是否存在,比如搜索列表的第一条知衣科技,匹配了0条,则初步判断是动态渲染的

或者可以用feapder命令,下载网页源码,查看。

打开后的页面为加载中

调用response.open()命令会在工作目录下生产一个temp.html文件,内容为当前请求返回的源码,我们点击查看,是一段js,有安全验证。因此可以推断出该网站有反爬,难度升级预警

feapder还支持使用curl命令请求,方式如下:

按F12,或者右键检查,打开调试窗口,刷新页面,点击当前页的请求,复制为curl,返回命令行窗口,输入feapdershell--然后粘贴刚刚复制的内容发现携带header,cookie也不行,可能是某些参数只能用一次吧。

调研结论:列表页有反爬,页面动态渲染

ps:正常大神还会继续调研,列表接口是什么,如何破解反爬,但因为我是小白,就先不纠结了

1.2详情页面

与列表页调研类似,结论是有反爬,但页面不是动态渲染的

2.创建项目

打开命令行工具,输入:

feapdercreate-plagou-spiderlagou-spider项目生成成功

生成项目如下:

我用的pycharm,先右键,将这个项目加入到工作区间。(右键项目名,MarkDirectoryas-SourcesRoot)

3.写列表页爬虫3.1创建爬虫

cdlagou-spider/spidersfeapdercreate-slist_spiderListSpider生成成功

生成代码如下:

importfeapderclassListSpider(feapder.AirSpider)efstart_requests(self):yieldfeapder.Request("

分享 转发
TOP
发新话题 回复该主题