Scrapy框架--通用爬虫Broad Crawls(下,具体代码实现)

通过前面两章的熟悉,这里开始实现具体的爬虫代码

广西人才网

以广西人才网为例,演示基础爬虫代码实现,逻辑:

  • 配置Rule规则:设置allow的正则-->设置回调函数
  • 通过回调函数获取想要的信息
    具体的代码实现:

import scrapy
from scrapy.linkextractors import LinkExtractor
from scrapy.spiders import CrawlSpider, Rule


class GxrcSpider(CrawlSpider):
    name = 'gxrc'
    allowed_domains = ['www.gxrc.com']
    start_urls = ['http://www.gxrc.com/']

    rules = (
        Rule(LinkExtractor(allow=r'WebPage/Company.*'),follow=True,callback='parse_company'),  # 配置公司正则
        Rule(LinkExtractor(allow=r'WebPage/JobDetail.*'), callback='parse_item', follow=True),  # 配置职位正则
    )

    def parse_item(self, response):
        """ 获取职位信息 """
        i = {}
        i['job_name'] = response.css('h1#positionName::text').extract_first("")  # 职位名称

        return i

    def parse_company(self, response):
        """ 获取公司信息 """
        i = {}
        i['company_name'] = response.css('.inner h1::text').extract_first("")  # 公司名称

        return i

这样即可完成基础的正则和信息抓取工作,至于Item和Pepiline和之前的写法一样。


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,022评论 3 119
  • 上海又来台风了。 不知道是第几次连绵却磅礴的雨了。真的好多次了。在徐州那样一个城市我从来没想过雨会是这样一种景象,...
    四月十月阅读 162评论 0 1
  • 嗡! 当牧尘手中印法结成的那一瞬间,顿时半空中那座巨大的灵阵内爆出了轰鸣之声,紧接着一道道肉眼可见的灵力光线蔓延出...
    混沌天书阅读 467评论 0 1
  • 分享一篇朋友的文章: 庄艳 作者 2017.02.22 10:32 打开App 每年的2月14日情人节,...
    _一兰阅读 310评论 0 0
  • 今天小月给大家读一个发生在1941年的离婚女人与富豪浪子的爱情故事。 1 故事最先出场的人物是女主白流苏的四哥白四...
    伴读磊磊阅读 1,857评论 0 2