资讯专栏INFORMATION COLUMN

我的第一个 scrapy 爬虫

xiaoxiaozi / 2187人阅读

摘要:安装这个就不用我说了吧,网上教程一大堆安装包创建项目进入项目目录下,创建爬虫文件进入项目目录,执行命令编写文件编写文件职位名称详情连接职位类别执行输出到文件执行成功会显示如下内容版本说明源码地址参考关注微信公众号,

安装 python

这个就不用我说了吧,网上教程一大堆

安装 scrapy 包

pip install scrapy

创建 scrapy 项目

scrapy startproject aliSpider

进入项目目录下,创建爬虫文件

cmd 进入项目目录,执行命令:

scrapy genspider -t crawl alispi job.alibaba.com

编写 items.py 文件

# -*- coding: utf-8 -*-

# Define here the models for your scraped items
#
# See documentation in:
# https://doc.scrapy.org/en/latest/topics/items.html

import scrapy


class AlispiderItem(scrapy.Item):
    # define the fields for your item here like:
    detail = scrapy.Field()
    workPosition = scrapy.Field()
    jobclass = scrapy.Field()
    

编写 alispi.py 文件

# -*- coding: utf-8 -*-
import scrapy
from scrapy.linkextractors import LinkExtractor
from scrapy.spiders import CrawlSpider, Rule
from aliSpider.items import AlispiderItem


class AlispiSpider(CrawlSpider):
    name = "alispi"
    allowed_domains = ["job.alibaba.com"]
    start_urls = ["https://job.alibaba.com/zhaopin/positionList.html#page/0"]
    pagelink = LinkExtractor(allow=("d+"))
    rules = (
        Rule(pagelink, callback="parse_item", follow=True),
    )

    def parse_item(self, response):
        # for each in response.xpath("//tr[@style="display:none"]"):
        for each in response.xpath("//tr"):
            item = AlispiderItem()
            # 职位名称
            item["detail"] = each.xpath("./td[1]/span/a/@href").extract()
            # # # 详情连接
            item["workPosition"] = each.xpath("./td[3]/span/text()").extract()
            # # # 职位类别
            item["jobclass"] = each.xpath("./td[2]/span/text()").extract()
            yield item

执行

scrapy crawl alispi

输出到文件 items.json

scrapy crawl alispi -o items.json

执行成功会显示如下内容

版本说明

python 3.5.5

源码地址:https://github.com/zhongsb/al...

参考:https://scrapy-chs.readthedoc...

关注微信公众号 [prepared],与博主深入探讨。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/42542.html

相关文章

  • scrapy入门教程3:scrapy的shell命令

    摘要:用例运行爬虫命令基本语法是否需要项目存在当然是不需要咯貌似这个命令是不依托一个项目而直接运行一个爬虫的命令。用例我终于写完了,喜欢的就收藏推荐一下吧,这样我就会更有动力写新的教程了,哇哈哈 0. 基本环境说明 本文截图及运行环境均在Win8上实现(是的,我放假回家了,家里的机器是win8的没有办法),但基本步骤与win 7环境基本相同。(应该把~)ps:我后来换了台win7的电脑,所...

    zhongmeizhi 评论0 收藏0
  • 爬虫学习之基于 Scrapy爬虫自动登录

    摘要:概述在前面两篇爬虫学习之基于的网络爬虫和爬虫学习之简单的网络爬虫文章中我们通过两个实际的案例,采用不同的方式进行了内容提取。 概述 在前面两篇(爬虫学习之基于Scrapy的网络爬虫和爬虫学习之简单的网络爬虫)文章中我们通过两个实际的案例,采用不同的方式进行了内容提取。我们对网络爬虫有了一个比较初级的认识,只要发起请求获取响应的网页内容,然后对内容进行格式化存储。很多时候我们抓取到的内容...

    Panda 评论0 收藏0
  • scrapy入门

    摘要:快速入门首先,初步要做的就是快速构建一个爬虫。然后把结果加入到一个队列中。既然是入门,我们肯定是先关心我们需要的。 因为公司项目需求,需要做一个爬虫。所以我一个python小白就被拉去做了爬虫。花了两周时间,拼拼凑凑总算赶出来了。所以写个blog做个记录。 快速入门 首先,初步要做的就是快速构建一个爬虫。 配置环境 Mac下安装 1) 直接从官网下载 python下载官网 2) 是通过...

    CrazyCodes 评论0 收藏0
  • Python爬虫 - scrapy - 爬取豆瓣电影TOP250

    摘要:前言新接触爬虫,经过一段时间的实践,写了几个简单爬虫,爬取豆瓣电影的爬虫例子网上有很多,但都很简单,大部分只介绍了请求页面和解析部分,对于新手而言,我希望能够有一个比较全面的实例。 0.前言 新接触爬虫,经过一段时间的实践,写了几个简单爬虫,爬取豆瓣电影的爬虫例子网上有很多,但都很简单,大部分只介绍了请求页面和解析部分,对于新手而言,我希望能够有一个比较全面的实例。所以找了很多实例和文...

    WalkerXu 评论0 收藏0
  • scrapy 实战练习

    摘要:爬取百思不得姐首先一步一步来,我们先从爬最简单的文本开始。将百思不得姐段子保存到中别忘了将管道加到配置文件中。虽然我只是简单的爬了百思不得姐,不过这些方法可以应用到其他方面,爬取更多更有用的数据。 前一篇文章介绍了很多关于scrapy的进阶知识,不过说归说,只有在实际应用中才能真正用到这些知识。所以这篇文章就来尝试利用scrapy爬取各种网站的数据。 爬取百思不得姐 首先一步一步来,我...

    betacat 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<