对于初学python的小伙伴们来说还达不到这样的能力,所以小伙伴们可以先看看小编的代码,再进行模仿和学习。代码方面不是很长,但是比较复杂,接下来我们就一起看看如何编写pyspider吧。
代码:
from pyspider.libs.base_handler import *class Handler(BaseHandler):
crawl_config = {
}
@every(minutes=24 * 60) def on_start(self):
self.crawl('__START_URL__', callback=self.index_page)
@config(age=10 * 24 * 60 * 60) def index_page(self, response): for each in response.doc('a[href^="http"]').items():
self.crawl(each.attr.href, callback=self.detail_page)
@config(priority=2) def detail_page(self, response): return { "url": response.url, "title": response.doc('title').text(),
}
crawl_config:爬虫的全局参数设置,例如请求头和cookies可以在这里设置(传入关键字及对应的参数即可)
on_start(self):爬虫开始爬取的入口
crawl:和requests有相同的功能 ,可以支持 get(默认) 和 post,常用的参数有
data 是想要提交数据
callback 可以在执行完 crawl后调用回调函数
method 是指定 访问方法
files 上传文件,{'key': ('file.name': 'content')}
headers 请求头,类型dict
cookies 请求的 Cookies 类型 dict
timeout 请求内容里最大等待秒数.默认值:120
connect_timeout : 指定请求时链接超时时间,单位秒,默认值:20
proxy : 可以设置代理服务器,暂时只支持http代理
没有看懂代码的小伙伴们也不要气馁,等过一段时间基础知识学明白后,相信编写pyspider就不会有什么问题了。
如果你现在想学习python,赢取高薪工作机会,非常简单,填写下面信息,学好python技术高薪工作机会唾手可得。
上一篇:Cookie在python爬虫中的属性有哪些?怎么用?
下一篇: 没有了
一级建造师二级建造师消防工程师造价工程师土建职称房地产经纪人公路检测工程师建筑八大员注册建筑师二级造价师监理工程师咨询工程师房地产估价师 城乡规划师结构工程师岩土工程师安全工程师设备监理师环境影响评价土地登记代理公路造价师公路监理师化工工程师暖通工程师给排水工程师计量工程师
执业药师执业医师卫生资格考试卫生高级职称护士资格证初级护师主管护师住院医师临床执业医师临床助理医师中医执业医师中医助理医师中西医医师中西医助理口腔执业医师口腔助理医师公共卫生医师公卫助理医师实践技能内科主治医师外科主治医师中医内科主治儿科主治医师妇产科医师西药士/师中药士/师临床检验技师临床医学理论中医理论