python爬虫中怎样编写pyspider?看完学不会算我输
来源 :中华考试网 2020-12-01
中对于初学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技术高薪工作机会唾手可得。