# -*- coding: utf-8 -*-
import scrapy
from Boss.items import BossItem
class ZhipinSpider(scrapy.Spider):
name = 'zhipin'
allowed_domains = ['zhipin.com']
start_urls = ['https://www.zhipin.com/c101280600/?query=python&page=1&ka=page-1']
#['https://www.zhipin.com/c101280600/?query=python&page=%d&ka=page-%d'%(i,i) for i in range(1,21)]
# ['https://www.zhipin.com/c101280600/?query=python&page=1&ka=page-1']
# ['https://www.zhipin.com/c101280600/?query=python&page=1&ka=page-1','https://www.zhipin.com/c101280600/?query=python&page=2&ka=page-2','https://www.zhipin.com/c101280600/?query=python&page=3&ka=page-3']
# 定义一个变量,用于记录当前是第几页
page = 1
def parse(self, response):
job_list = response.xpath("//div[@class='job-list']//li")
# print(len(job_list))
for job in job_list:
item = BossItem()
item["job"] = job.xpath(".//div[@class='job-title']/text()").extract_first()
item["salary"] = job.xpath(".//span[@class='red']/text()").extract_first()
item["company"] = job.xpath(".//div[@class='company-text']//a/text()").extract_first()
item["position"] = job.xpath(".//div[@class='info-primary']/p//text()[1]").extract_first()
item["require"] = job.xpath(".//div[@class='info-primary']/p//text()[2]").extract_first() + job.xpath(".//div[@class='info-primary']/p//text()[3]").extract_first()
item["info"] = " ".join(job.xpath(".//div[@class='company-text']/p//text()").extract())
item["hr"] = " ".join(job.xpath(".//div[@class='info-publis']//h3[@class='name']/text()").extract())
yield item
# 进行一个翻页操作
self.page += 1
if self.page < 20:
# 重新调度下载器
url = 'https://www.zhipin.com/c101280600/?query=python&page=%d&ka=page-%d' % (self.page,self.page)
yield scrapy.Request(url=url,callback=self.parse)
# 这种方案同步的下载,在一个下载器下载器下载并解析完毕以后继续用手动的调取下载器递归下载
4.爬取翻页
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 序 距离上次发布已经过去2个月之多,最近总结的时间越来越少,只能挤着来总结了。终于花了点时间将页面分析与下载工作完...
- 目标 爬取深交所互动易一个论坛型的网站 http://irm.cninfo.com.cn/szse/index.h...
- 利用道译界面制作翻译程序 查看其翻译界面,发现POST请求需要传递大量的参数,测试后,动态生成SATL和S叹息。当...